Skip to main content
Version: 7.2402.x.x RR

Git Deployment

EXPERIMENTAL FEATURE

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.