Move 21 blumeops-tagged zettelkasten cards from ~/code/personal/zk/ to docs/ in this repository. These files are symlinked back into the zk at ~/code/personal/zk/blumeops for seamless obsidian.nvim integration. This enables: - Git-managed documentation in the blumeops repo - Preserved wiki links between blumeops docs - obsidian-sync isolation (docs don't sync to other devices) - Direct editing via obsidian.nvim with the blumeops workspace Also updates zk-docs mise task to read from local docs/ directory. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1.9 KiB
1.9 KiB
| id | aliases | tags | ||||
|---|---|---|---|---|---|---|
| external-secrets |
|
|
External Secrets Operator
External Secrets Operator (ESO) syncs secrets from 1Password to Kubernetes Secrets via 1Password Connect.
Architecture
1Password Cloud
|
v
1Password Connect (namespace: 1password)
|
v
External Secrets Operator (namespace: external-secrets)
|
v
Native Kubernetes Secrets
Usage
ClusterSecretStore onepassword-blumeops provides access to the blumeops vault. See argocd/manifests/devpi/external-secret.yaml for a simple example.
Important: 1Password Connect doesn't support the ?ssh-format=openssh query parameter. SSH keys must be stored as Secure Notes with the OpenSSH-formatted key (see argocd-forge-ssh-key item).
# Check all ExternalSecrets
kubectl --context=minikube-indri get externalsecret -A
# Find 1Password field names
op item get <item> --vault blumeops --format json | jq '.fields[] | .label'
Bootstrap (One-Time Setup)
If reinstalling from scratch:
-
Create Connect server credentials:
op connect server create blumeops --vaults blumeops op connect token create blumeops --server <server-id> --vault blumeops -
Store in 1Password item "1Password Connect":
credentials-file: raw JSONcredentials-base64: base64-encoded JSONtoken: access token
-
Apply bootstrap secret:
kubectl --context=minikube-indri create namespace 1password op inject -i argocd/manifests/1password-connect/secret-credentials.yaml.tpl | \ kubectl --context=minikube-indri apply -f - -
Sync apps in order:
argocd app sync 1password-connectargocd app sync external-secrets-crdsargocd app sync external-secretsargocd app sync external-secrets-config