Skip to content

2026-08-31 Dashboard ClearML secret wiring

Wired production ClearML credentials into dashboard-api without exposing secret values.

Work Done

  • Inspected infra_k8s/current/dashboard/ and the live dashboard namespace using metadata-only commands.
  • Confirmed that the nginx frontend mounts only TLS and optional vxData proxy Secrets, while dashboard-api maps individual keys from the out-of-band dashboard-api-secrets Secret into environment variables.
  • Confirmed the source argo-workflows/clearml-credentials-production Secret contains the expected key names without reading or decoding their values.
  • Pulled the latest infra_k8s main, created feat/dashboard-clearml-credentials, and added mappings for DASHBOARD_CLEARML_API_URL, DASHBOARD_CLEARML_ACCESS_KEY, and DASHBOARD_CLEARML_SECRET_KEY.
  • Validated YAML parsing, exact Secret/key references, and whitespace.
  • Opened infra_k8s PR #187.
  • Copied the three encoded fields directly from argo-workflows/clearml-credentials-production into dashboard/dashboard-api-secrets through a silent pipeline after internal DNS/VPN access recovered. Verified only the destination key names; no Secret value was decoded, displayed, or persisted outside Kubernetes.

Lessons Learned: Pitfalls

  • “Dashboard frontend” is ambiguous in this deployment. Runtime application credentials belong on dashboard-api; the browser-facing nginx frontend must not receive them.
  • Argo CD self-heal means a manual Deployment patch would be temporary. The environment mapping belongs in Git, while Secret values remain provisioned out of band.
  • Required Secret references can block a rollout when keys are absent. Provision the destination Secret keys before merging PR #187.
  • Cluster access depends on internal DNS/VPN because kubectl obtains OIDC credentials from Keycloak.

Lessons Learned: Improvements

  • Add declarative secret synchronization from the secret manager so credentials do not need cross-namespace kubectl copies.
  • Document the ownership and renewal process for dashboard-api-secrets and other out-of-band application Secrets.
  • Keep credential-copy validation metadata-only: verify key names and workload references, never values.
Navigation

Type to search…

↑↓ navigate↵ selectEsc close