-
Notifications
You must be signed in to change notification settings - Fork 138
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
Improved UX for updating wif-config. #700
base: main
Are you sure you want to change the base?
Conversation
e2943d7
to
85739cb
Compare
cmd/ocm/gcp/gcp-client-shim.go
Outdated
needPolicyUpdate := false | ||
|
||
policy, err := c.gcpClient.GetProjectIamPolicy(ctx, projectName, &cloudresourcemanager.GetIamPolicyRequest{}) | ||
|
||
if err != nil { | ||
return fmt.Errorf("error fetching policy for project: %v", err) | ||
return false, fmt.Errorf("error fetching policy for project: %v", err) |
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.
Not related specifically to this MR: why not using errors.Wrap (as done in other places in this file)?
pkg/utils/jwks.go
Outdated
jwksStrB string, | ||
) bool { | ||
var jwksA, jwksB struct { | ||
Keys []struct { |
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.
What about x5c
and x5t
?
Is there a a third party comparison tool that we can use? trying not to re-invent the wheel
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.
updated to use https://pkg.go.dev/github.com/MicahParks/jwkset#JWKSMarshal
85739cb
to
87d39fd
Compare
…esource updation Ensured all operations modifying GCP cloud resources will log messages to the user. The 'ocm gcp update wif-config' command was unnecessarily updating the oidc data of the workload identity pool, even when there were only formatting differences. By improving the evaluation method for the jwks configuration, the oidc configuration will now only be updated if there is a meaningful difference. Service Account access policies were being during every run of the update command. By checking whether the policies are already in place, updates to the policy will only occur if necassary.
87d39fd
to
4e0c787
Compare
The included changes provide the following properties to the update command:
Additional logic was needed to check the configuration of jwks and service account access. Prior to this, these resources were being updated every time the command was called.