Skip to main content
Version 3.0

Argo CD Configuration

ChartVersion3.0.1TypeapplicationAppVersion3.2.5
CompatibilityKubernetes1.32+OpenShift4.19+Rancher2.10.x+
Feature SupportLDAPsupportedIngresssupportedGateway APIsupported

What is Argo CD?

Argo CD is TDP's GitOps continuous delivery tool.

It monitors a Git repository and ensures that what is in the Kubernetes cluster is always in sync with what is in Git — if you change a configuration file in the repository, Argo CD detects the change and applies it to the cluster automatically.

In TDP Kubernetes, Argo CD is mainly used to manage the lifecycle of the TDP charts themselves in the App of Apps model: a root Application that manages other Applications, each responsible for a TDP component.

This is described in detail in the installation via Argo CD and update guides.

Argo CD does not replace Helm

Argo CD uses Helm to render the charts and apply resources to the cluster. The difference is that you do not run helm upgrade manually — Argo CD does it automatically when it detects changes in Git. The configuration flow (values files, secrets) remains the same.

The tdp-argo chart wraps Argo CD 3.2.5 as a wrapper over the upstream argo-cd chart.

Overview

PropertyValue
Charttdp-argo
Argo CD version3.2.5
Chart version3.0.1
Upstreamargo-cd chart
ModelApp of Apps (GitOps)
Supported featuresLDAP, Ingress, and Gateway API

Helm value structure

All values must be set under tdp-argo: (the dependency alias in Chart.yaml):

tdp-argo:
server:
resources:
requests:
cpu: "250m"
memory: "256Mi"

TDP-specific settings

The chart includes TDP-specific settings, outside the upstream scope:

  • skipCrdCheck — validates that tdp-crds is installed before the deployment.
  • TDP-Settings.gateway — exposure control via Ingress or Gateway API.
  • gatewayApi — Gateway API configuration for the HTTPRoutes.

Prerequisites: CRDs (tdp-crds)

Installing the CRDs before the main chart is mandatory:

Terminal input
helm upgrade --install tdp-crds \
oci://registry.tecnisys.com.br/tdp/charts/tdp-crds \
-n <NAMESPACE> --create-namespace

The main chart keeps tdp-argo.crds.install=false to avoid CRD lifecycle conflicts in Helm. tdp-crds consolidates the CRDs of all platform components (Argo CD, Kafka, NiFiKop, ClickHouse, OpenMetadata, and cert-manager) in a single release.

Installation

The deploy.sh script automates the full Argo CD installation:

Terminal input
./deploy.sh --install -v variables.env.local

What is executed:

  1. helm registry login → authenticates to the OCI registry
  2. helm upgrade --install tdp-crds → installs the CRDs
  3. helm upgrade --install tdp-argo → installs Argo CD
  4. kubectl rollout status → waits for the pods to be ready
  5. Renders the templates → populates current/
  6. Applies the common resources (AppProject, Secrets, App of Apps)

The full GitOps flow (repository structure, variables.env.local, bootstrap, and synchronization) is documented in Installation via Argo CD.

Via direct Helm

For a manual installation via Helm:

Terminal input
helm upgrade --install tdp-argo \
oci://registry.tecnisys.com.br/tdp/charts/tdp-argo \
-n <NAMESPACE> --create-namespace \
--set skipCrdCheck=false

Verification

Installation ConfigMap

Terminal input
kubectl get configmap tdp-argo-argo-install-properties -n <NAMESPACE> \
-o jsonpath='{.data.install\.properties}' | tail -10
Terminal input
kubectl get configmap tdp-argo-argo-install-properties -n <NAMESPACE> -o jsonpath='{.data.argo-admin-install\.properties}' | tail -10

Pods

Terminal input
kubectl get pods -n <NAMESPACE>

All pods must be in Running status.