Skip to main content
Version: 4.20.x.x Java 8 ELS

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.
  • 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