Commit Graph

6 Commits

Author SHA1 Message Date
CaffeineTux
6581a93ac2 Move secrets to HelmRelease values field
Secrets are now in the HelmRelease spec.values field.
This allows Flux to pass them directly to Helm during deployment.

Next step: Extract these to SOPS-encrypted Secret and use valuesFrom.
2025-11-16 03:15:08 -05:00
CaffeineTux
a754d05075 Add secrets to MCP umbrella values for deployment
Individual MCP charts don't support existingSecret pattern.
Secrets are now embedded in values.yaml which is stored in git.

NOTE: This is a temporary solution. Future improvement should:
- Modify MCP charts to support existingSecret
- Or use SealedSecrets/SOPS-encrypted valuesFrom in Flux

All 16 MCP charts now ready for deployment via Flux.
2025-11-16 03:11:16 -05:00
CaffeineTux
c539116eb4 Configure MCP servers to use Harbor OCI registry
- Updated Chart.yaml dependencies to use OCI registry
- Added HelmRepository resource for Harbor
- Created Harbor registry secret (SOPS-encrypted)
- Updated HelmRelease to use HelmRepository instead of Git source
- Packaged and pushed all 16 MCP charts to Harbor OCI registry
- Updated .sops.yaml to handle platform secrets

All MCP charts are now available at:
oci://images.caffeinetux.com/mcp-charts
2025-11-16 03:04:40 -05:00
CaffeineTux
f06c33ddf2 Remove invalid HelmRelease dependency
Removed dependency on 'mcp-secrets' HelmRelease which doesn't exist.
Secrets are deployed via Kustomize in the same namespace.
2025-11-16 02:37:38 -05:00
CaffeineTux
64be88c9fe Fix GitRepository references in Kustomizations
Changed all references from 'homelab' to 'flux-system' to match
the actual GitRepository resource created by Flux bootstrap.
2025-11-16 02:36:17 -05:00
CaffeineTux
9fc30a3573 Initial homelab GitOps repository setup
This commit establishes the foundation for the homelab GitOps repository:

- Created layered architecture (infrastructure/platform/apps)
- Added MCP servers umbrella chart with SOPS-encrypted secrets
- Configured Flux Kustomizations for infrastructure and platform layers
- Set up SOPS + Age for secrets management
- Added .gitignore and documentation

MCP servers include:
- Gateway with auth (API keys in encrypted secrets)
- n8n MCP (workflow automation)
- Playwright MCP (browser automation)
- Kubernetes MCP (kubectl operations)
- GitHub MCP (repository management)
- Gitea MCP (self-hosted git)
- SQLite MCP (database operations)
- Filesystem MCP (file operations)
- Fetch MCP (HTTP requests)
- Memory MCP (shared memory/state)

All secrets are encrypted with SOPS using Age encryption.
2025-11-16 02:28:44 -05:00