-
Notifications
You must be signed in to change notification settings - Fork 6
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
feat: Add encrypted .env
creds
#475
Conversation
@aaronsteers I have tested this with a publickey from the sandbox account and, as expected, our Google Analytics credentials are too long to fit into one ciphertext. I have created this issue to track chunking long plaintext into arrays of ciphertexts in |
Confirmed:
Related:
Still TBD/TODO:
|
Maybe a |
We can manually generate a KMS key for now or we can deploy the infra off https://github.com/meltano/dragon-infra/pull/91 and see how it goes in the new staging account. Right now nothing is deployed in staging. |
I've got this PR deployed into our new staging account. If it looks good to everyone, I'll merge it and share the public key with @kgpayne. cc @aaronsteers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kgpayne this looks great!
As a side not since I'm curious - are we expecting to have one of these secrets.yml files for each meltano environment? It would be really helpful in CI to just pull secrets from KMS vs storing them in GitHubs secret store. Having a secrets
key attached to each meltano env seems super useful, each slightly different than each other.
@@ -85,3 +85,7 @@ environments: | |||
AIRFLOW__SCHEDULER__DAG_DIR_LIST_INTERVAL: '30' | |||
AIRFLOW_VAR_MELTANO_ENVIRONMENT: userdev | |||
AIRFLOW_VAR_OPERATOR_TYPE: bash | |||
# Secrets via KMS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kgpayne are these env variables required in the other meltano environments (cicd/staging/prod) as well?
@kgpayne I'm not sure what the size limit is exactly but fwiw we could split the TAP_GOOGLE_ANALYTICS_CLIENT_SECRETS secret into its parts using the dot syntax so they live in the meltano.yml file since most of them arent sensitive, like:
and only leave the truly secret sections like |
Co-authored-by: Will Da Silva <[email protected]>
https://github.com/meltano/squared/actions/runs/3482409891/jobs/5824784907
|
@aaronsteers related to the failing test I created #480 that should fix it, once thats pulled in this PR should pass. Optionally since this is high priority we can force merge since this PR doesnt affect anything thats being tested anyways. #354 is the actual issue that periodically causes the test to fail since we dont have a way to dynamically generate the url yet. |
Closes #463
.env
creds #463