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.
- Side-by-side deployment feature is not supported.
- Delete deployment feature is not supported.
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 generated to the */etc/nevis
directories and 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: '*/etc/nevis/k8s*.yaml'
destination:
server: 'https://kubernetes.default.svc'
namespace: argotest
syncPolicy:
syncOptions:
- PrunePropagationPolicy=background