Add External Secrets Operator with 1Password Connect (#66) #66

Merged
eblume merged 7 commits from feature/external-secrets into main 2026-01-28 19:30:11 -08:00

7 commits

Author SHA1 Message Date
bc5ca35e41 Switch devpi ExternalSecret to Owner creationPolicy
Migration validated successfully, ESO now fully owns the secret.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:27:28 -08:00
7112d0756c Fix 1Password Connect credentials format
The OP_SESSION env var expects base64-encoded credentials.
Updated secret template to use credentials-base64 field.

Also updated 1Password item instructions to include adding
the base64-encoded credentials.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:25:38 -08:00
a7fd4bbbe7 Fix ESO API versions and add CRDs app
- Update ClusterSecretStore to use v1 API (not v1beta1)
- Update devpi ExternalSecret to use v1 API
- Add external-secrets-crds app to install CRDs with ServerSideApply
  (Helm chart CRDs are auto-generated during packaging, not in raw git)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:19:41 -08:00
4f335abb56 Use Merge creationPolicy for safer secret migration
Merge allows ESO to take over an existing secret without
requiring deletion first, preventing service disruption.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:03:31 -08:00
f2cdb41f35 Add ExternalSecret for devpi as proof of concept
Converts devpi secret from manual op inject to ExternalSecret.
This validates the 1Password Connect + ESO workflow.

The secret-root.yaml.tpl template is kept for reference but
the ExternalSecret will now manage the devpi-root secret.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 18:47:02 -08:00
eafcdb2f28 Add External Secrets Operator for GitOps secret management
Deploys ESO to sync secrets from 1Password to native K8s Secrets.
Replaces manual `op inject` workflow with declarative ExternalSecrets.

Includes:
- ArgoCD Application for ESO operator (helm-chart-1.3.1)
- Separate config app for ClusterSecretStore
- ClusterSecretStore connecting to 1Password Connect
- Helm values with resource limits for minikube

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 18:46:54 -08:00
38179337e0 Add 1Password Connect server for secrets automation
Deploys 1Password Connect to provide REST API access to vault items.
This enables External Secrets Operator to sync secrets from 1Password.

Includes:
- ArgoCD Application using Helm chart (connect-2.2.1)
- Bootstrap secret template for credentials
- Helm values with resource limits for minikube

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 18:46:46 -08:00