Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MAINT: Refactor sops secrets to enable App-specific secrets #227

Merged
merged 8 commits into from
Nov 29, 2024

Conversation

anish-mudaraddi
Copy link
Collaborator

We are now using Sops secrets for applications like manila/galaxy - this requires separate keys on every cluster

The keys that go on each cluster are supposed to be temporary - ideally none should have access to these once the cluster's been created.

This PR splits secrets into infra and apps

  • Allows app-related secrets to be stored separate to infra secrets - meaning that management cluster keys cannot encrypt/decrypt child-cluster secrets.
  • Better separation of concerns + added security

This is a major change - this should become a feature branch that we point dev to before merging into main - hence I've left it in draft

Split sops secrets into 2 parts - infra and apps

the infra secrets should only be used by the management cluster

new apps folder for storing cluster-specific secrets pertaining to apps running on the cluster.

This allows us to use different keys for the child clusters and the secrets will not be accessible by the management cluster - allows separation of roles.
add a script that will update all sops secrets for a given cluster and environment

TODO: update this script to automatically add a new key in to .sops.yaml if given as a parameter
add config to enable using secrets on all clusters
not every chart needs cluster-specific values - use dummy secret to make this parameter optional like for secretsFile
update docs to explain how to add app-related secrets
change secrets structure to be
environment / clustername / secret-type

more intuitive and saves extra folders needing to be created
test the new secrets methodology using feature-branch update-secrets
@anish-mudaraddi
Copy link
Collaborator Author

dev management and worker clusters are using this feature branch with no issues - I believe this is ready for deployment.

I want to change dev/staging/prod all at once with this PR to avoid the headache of promoting and having to remember 2 different procedures for handling secrets

@khalford khalford merged commit 7369fff into main Nov 29, 2024
2 checks passed
@khalford khalford deleted the update-secrets branch November 29, 2024 09:21
@khalford khalford restored the update-secrets branch November 29, 2024 09:21
@khalford khalford deleted the update-secrets branch November 29, 2024 09:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants