Bootstraps ArgoCD and the app-of-apps, then hands Kubernetes-side resources off to Argo from k8s-gitops.
Includes:
- EKS Auto Mode ingress class resources
- External Secrets Operator
- External Secrets per-environment SecretStores and envtype fanout
- ExternalDNS
- Dex (SSO for K8s)
- ArgoCD
- Kargo writeback git credentials and webhook secrets in Kubernetes
Apply ../cluster/ and ../cluster-infra/ first.
Prerequisite: ../cluster/ and ../cluster-infra/ must already have been applied.
# Update kubernetes context to point at the cluster we made in ../cluster
$(tofu -chdir=../cluster output -raw kubectl_config_command)
# We use some ruby scripts here
bundle install
tofu init
AWS_PROFILE=cdo-readwrite tofu apply-
bin/argo-traceprints the live Argo/Kubernetes dependency tree to stdout. -
bin/watch-argo-traceruns argo-trace in a loop, watching its output usingwatch, use this as your human default go to command to watch the cluster.
- This directory has its own Ruby bundle. Run
bundle installonce before usingbin/argo-trace,bin/watch-argo-trace, or the Ruby tests. - If you modify
bin/argo-trace, run before commit:ruby test/argo-trace/argo_trace_test.rb test/argo-trace/fixtures/argo-cli-data/holds savedargocd --coreYAML responses forargo-trace.test/argo-trace/expected-output-from-argo-trace-given-data-responses.txtis the expected rendered tree for that saved Argo CLI dataset.- If you modify
bin/log-cluster-events, run before commit:ruby test/log_cluster_events_test.rb - If you modify
bin/wait-for-200, run before commit:ruby test/wait_for_200_test.rb bin/wait-for-200smoke:bin/wait-for-200 --timeout-seconds 30 https://studio.code.org