GitOps

GitOps is a methodology for deploying services and maintaining a state using a git repository as source of truth. It can be seen as a further evolution of DevOps where one of the main points is to use git to automatize as much as possible of the deployment lifecycle of an application or service.

This page links to reference GitOps implementations on different SRCs. Each SRC that has put their infrastructure deployment in a GitOps repo can be used as a source of reference for deploying various SRCNet services. Some of these deployments are based on ArgoCD, other solutions are based on FluxCD.

The GitOps deployments for different SRCs can be found in the following Gitlab space:

https://gitlab.com/ska-telescope/src/deployments

While the repos above should be considered the up-to-date reference for each SRCNet service, some of the supporting services and setup of the GitOps controllers themselves (e.g. ArgoCD) are detailed as part of this document. In any case these are meant as optional tools.

Technology

Deployment Methods

GitOps: ArgoCD

Manual

Certificates: cert-manager

DNS: external-dns

Ingress: ingress-nginx

Secrets management: external secrets operator

Secrets storage: vault