-
Notifications
You must be signed in to change notification settings - Fork 30
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: alternate approach for external crn support #547
Conversation
/run pipeline |
/run pipeline |
/run pipeline |
/run pipeline |
/run pipeline |
1 similar comment
/run pipeline |
/run pipeline |
3 similar comments
/run pipeline |
/run pipeline |
/run pipeline |
/run pipeline |
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.
I think these pieces of content would be helpful:
variables.tf
: If you can't have a description for parts of the object, then include a comment on theexisting_key_crn
property. Idenitfy which properties are mutually exclusive (in other words, you don't identify both thename
and thecrn
in the same object, right?)- Does this warrant an example? Or content in the readme for an existing example?
- Good release notes (see below)
Perhaps a release note like this?
You can now use keys that you created outside this module (
or is it from different accounts, or is it different instances
). You specify the key CRN in the "existing_key_crn" field. The existing key must have an authentication policy that allows the service (which service?
) to access the Key Management Service in the external account.
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.
@Aashiq-J
The code changes look good from a terraform standpoint, one of the biggest changes here is that we are switching many of the key.id
inputs to key.crn
inputs for many of the provider calls.
Have we confirmed that all of the resource blocks are ok with crn instead of the id? Have we done a test with a cross-account key and verified that the resources (cos buckets, boot keys of vsi/cluster etc) are using the correct keys for encryption?
Hi, @toddgiguere , @SirSpidey I have tested it and it works with |
/run pipeline |
/run pipeline |
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.
I realize now that both name and existing CRN are allowed. So I don't have any more comments.
/run pipeline |
3 similar comments
/run pipeline |
/run pipeline |
/run pipeline |
/run pipeline |
/run pipeline |
2 similar comments
/run pipeline |
/run pipeline |
/run pipeline |
@Aashiq-J probably no point in constantly rebasing and triggering pipeline as every pipeline run is provisioning resources in our account and adding to cost + quotas. Lets get the PR reviewed and approved and then trigger the pipeline. I was off when you guys talked about this so perhaps @toddgiguere you can give it a final review please? |
/run pipeline |
I see Todd has approved this PR. Just merging this. |
🎉 This PR is included in version 4.9.0 🎉 The release is available on:
Your semantic-release bot 📦🚀 |
Description
Issue: #510
In this alternate approach, we can pass the keys to be created and key_crn of already created keys in the list of keys. For example,
In this example, the
slz-vsi-volume-key
key will be created inslz-kms
key-protect andsample
will not be created as it is an existing key. And the user can use the sample key like rest of the keys in SLZ.Disclaimer: If the user is using a existing_key_crn the user has to manage the auth policy for the access to the kms.
Release required?
x.x.X
)x.X.x
)X.x.x
)Release notes content
You can now use keys that you created outside this module or from different accounts. You specify the key CRN in the "existing_key_crn" field. When using an existing key crn, user must have an authentication policy that allows the
block-storage
,cloud-object-storage
andsecrets-manager
to access the Key Management Service in the external account.Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
Checklist for reviewers
Merge actions for mergers