Get ESDDNS Operator running with ArgoCD in minutes.
kubectl configured# Add Helm repo
helm repo add argo https://argoproj.github.io/argo-helm
helm repo update
# Install ArgoCD
kubectl create namespace argocd
helm install argocd argo/argo-cd -n argocd
cd argocd
kubectl apply -k dev/
This deploys:
cd argocd
kubectl apply -k prod/
This deploys:
cd argocd/bootstrap
./argocd-setup.sh both
# List applications
kubectl get applications -n argocd
# Get specific app status
argocd app get esddns-operator-helm-dev
argocd app get esddns-operator-helm-prod
# Watch sync progress
argocd app wait esddns-operator-helm-dev --sync
# Port forward
kubectl port-forward svc/argocd-server -n argocd 8080:443
# Get password
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath='{.data.password}' | base64 -d
Open: https://localhost:8080
# Check pods
kubectl get pods -n esddns-operator
kubectl get pods -n esddns-operator-dev
# Check services
kubectl get svc -n esddns-operator
kubectl get svc -n esddns-operator-dev
# View logs
kubectl logs -n esddns-operator -l app=esddns-operator-service
# Sync production manually
argocd app sync esddns-operator-helm-prod
# With prune (delete removed resources)
argocd app sync esddns-operator-helm-prod --prune
# Force sync
argocd app sync esddns-operator-helm-prod --force
Edit helm/esddns-operator/values-development.yaml or values-production.yaml
Commit and push to Git. Dev will auto-sync; prod requires manual sync.
Edit k8s/overlays/development/ or k8s/overlays/production/
Commit and push to Git. Dev will auto-sync; prod requires manual sync.
# Remove dev only
kubectl delete -k argocd/dev/
# Remove prod only
kubectl delete -k argocd/prod/
# Remove both
kubectl delete -k argocd/dev/
kubectl delete -k argocd/prod/
argocd app sync esddns-operator-helm-dev --force
argocd app diff esddns-operator-helm-dev
argocd app get esddns-operator-helm-dev
kubectl describe application esddns-operator-helm-dev -n argocd
argocd app logs esddns-operator-helm-dev
kubectl logs -n argocd deployment/argocd-controller-manager