-
Notifications
You must be signed in to change notification settings - Fork 1.1k
[WIP] Add controls related to CMEK encryption and support to FAST #3556
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
base: fast-dev
Are you sure you want to change the base?
Conversation
ludoo
left a comment
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.
This PR is too large and tackles too many things, some of which need a design discussion.
Can you please split it so:
- one PR adds support for KMS keys contexts to modules
- one PR implements any change you need in the stage 0 dataset
Then we discuss why you need to add projects to the security stage, and why you're adding an additional project module call to the project factory. None of those look ok from my PoV.
modules/project-factory/projects.tf
Outdated
|
|
||
| # observability require IAM and service agent configured when using CMEK encryption | ||
| module "projects-observability" { | ||
| source = "../project" |
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.
We should find a way of fitting this into the existing two project modules. Please let's discuss why you need to do this.
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.
We got a circular dependency between cmek permissions, log bucket creation using cmek and log based metrics using context, and context based on log bucket creation.
Something like:
- log based metrics require log buckets and use log bucket context
- log bucket context is build as follow (need
module.log-buckets)
ctx_log_buckets = merge(local.ctx.log_buckets, local.log_buckets)
log_buckets = {
for key, log_bucket in module.log-buckets : key => log_bucket.id
}
- log bucket require cmek encryption key and iam stuff done for cmek so it depends_on
module.projects-iamto get the expected permissions to role can be assigned to service agent. If log bucket is created before module.projects-iam, it will fails because cmek permission module.project-iamdepends on log bucket context .... (as done initially)
So this was to break the circular dependency on log bucket which need permissions on cmek before being created. So log based metrics are created once bucket are created and once cmek is setup with iam
Let me try to see during the week and deep dive if i can avoid it. Open to ideas if any
|
|
f45ba24 to
8de64f8
Compare
…ud-foundation-fabric into vannick/fsi-4-wave
No description provided.