extra-manifests/priorityclass-high-priority.yaml: cluster-side PriorityClass backing the app chart's hardcoded priorityClassName. secretstores/argocd-jenkins-ci-token.yaml: ExternalSecret for the scoped ArgoCD account devops-lib's syncArgoApp stage authenticates with. secretstores/harbor-robot-dockerconfig.yaml: ExternalSecret building a dockerconfigjson from the Harbor robot account for image pulls.
32 lines
1.3 KiB
YAML
32 lines
1.3 KiB
YAML
# Token for the scoped jenkins-ci ArgoCD account (see
|
|
# argocd-admin-prd/custom-values.yaml's accounts.jenkins-ci) — lets Jenkins
|
|
# trigger a sync of demo-go-app as the pipeline's last step, matching
|
|
# devops-lib's real refresh_and_sync (argocd app sync --hard-refresh).
|
|
#
|
|
# Unlike every other credential in this repo, this one genuinely can't be
|
|
# generated declaratively — ArgoCD only issues account tokens via its own
|
|
# API/CLI, after the account already exists on a running instance. One-time
|
|
# setup, once argocd-admin-prd has synced with the account config above:
|
|
# kubectl -n argocd port-forward svc/argocd-admin-prd-argocd-server 8080:80 &
|
|
# argocd login localhost:8080 --insecure --username admin --password '<admin password>'
|
|
# TOKEN=$(argocd account generate-token --account jenkins-ci)
|
|
# kubectl -n vault exec -i vault-0 -- vault kv put secret/argocd/jenkins-ci token="$TOKEN"
|
|
apiVersion: external-secrets.io/v1
|
|
kind: ExternalSecret
|
|
metadata:
|
|
name: argocd-jenkins-ci-token
|
|
namespace: jenkins
|
|
spec:
|
|
refreshInterval: 1h
|
|
secretStoreRef:
|
|
name: vault-backend
|
|
kind: ClusterSecretStore
|
|
target:
|
|
name: argocd-jenkins-ci-token
|
|
creationPolicy: Owner
|
|
data:
|
|
- secretKey: token
|
|
remoteRef:
|
|
key: argocd/jenkins-ci
|
|
property: token
|