Git for Source Control

Seldon Deploy will scan namespaces and recognise those with the seldon.gitops: enabled label as GitOps namespaces. If the GitOps label is not present or is disabled then new deployments and modifications in the namespace will be pushed directly to the Kubernetes cluster.

When GitOps is in place it is recommended to have a GitOps tool syncing a namespace to a directory in a git repo. The install has an example setup for argocd.

For GitOps-enabled namespaces, Seldon Deploy is only aware of resources defined in the corresponding git repository, but not any created manually in the namespace. As such, all resources in GitOps-enabled namespaces should be created and managed through Deploy or a GitOps tool.

GitOps responsiveness improves if webhooks are configured. One webhook should be configured to notify the GitOps tool (e.g. argocd) so that it can update the cluster on changes as quickly as possible. Another should be configured to inform Seldon Deploy of any changes to the repository.