Git Deployment
Overview
With Git deployments, the generated configuration is uploaded to the specified git repository without performing any further steps. This can be used to integrate nevisAdmin 4 with GitOps continuous delivery tools.
Configuration
Add the following property to the inventory to enable Git deployment.
manifestTarget: Git
If enabled, the kubernetes.url
and kubernetes.token
property is not required, but it's still recommended as it's necessary for the Kubernetes Status screen to work.
Restrictions and Limitations
- Git deployment is only possible for Kubernetes deployments.
- Only Kubernetes secret references are supported in the inventory.
ArgoCD
ArgoCD can be used together with Git deployment to handle the actual deployment of the Kubernetes manifest to the cluster.
The Kubernetes manifests are named k8s*.yaml
. The following ArgoCD application can be used as an example that deploys these to the cluster:
project: argotest
source:
repoURL: 'https://mygitrepo.com/argotest/kubernetes.git'
path: .
targetRevision: HEAD
directory:
recurse: true
jsonnet: {}
include: '*/k8s*.yaml'
destination:
server: 'https://kubernetes.default.svc'
namespace: argotest
syncPolicy:
syncOptions:
- PrunePropagationPolicy=background
When using side-by-side deployment the signer keystores are shared between the primary and secondary instances, this can cause duplicate resource warnings in ArgoCD. These can be safely ignored.