Skip to content

Support to add ResoureManagerTags to GCP Compute Disk, Image, Snapshot resources #1319

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

Closed
bharath-b-rh opened this issue Aug 2, 2023 · 6 comments · Fixed by #1377
Closed
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@bharath-b-rh
Copy link

/kind feature

GCP Tags are key-value pairs that are bind to the GCP resources. Unlike currently supported labels, tags are not part of the resource metadata but resource in itself. Tag Keys, Values, Bindings are all discreet resources. Tags are used for defining IAM policy conditions, Organization conditionals policies and integrating with Cloud billing for cost management, which are not supported by labels.

Describe the solution you'd like
Able to define the list of resource tags to add to the compute persistent disk resources created by the driver.

Anything else you would like to add:
Currently tag resources tag keys and tag values can only be created at Organization and Project level with the required permissions. Tag keys and Tag Values will be created by the user and only the Tag bindings to the compute pd resources to be created by the driver and would require(propose) below changes

  1. Driver to accept new argument(--extra-tags) for the list of tags, where tags would be provided as CSV of the form <parent_id>/<key1>/<value1>,...,<parent_id>/<keyN>/<valueN>, where
    parent_id : Organization or the Project ID where tag key and tag value resource exists.
    key : Tag key short name
    value : Tag value short name
    N : A maximum of 50 tags bindings is allowed for a resource.

  2. Below resources created by the driver requires to be updated with tags

  • Compute Disks
  • Compute Images
  • Compute Snapshots

Reference Links:

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Aug 2, 2023
@bharath-b-rh
Copy link
Author

/assign @bharath-b-rh

@arkadeepsen
Copy link
Contributor

/assign @arkadeepsen

@mattcary
Copy link
Contributor

mattcary commented Nov 2, 2023

@arkadeepsen @bharath-b-rh
/cc @msau42

Do we think that adding driver command line flags is the right way to go? Those tend to be hard to configure as they're typically set with cluster setup. Would storage class parameters work better, as we also have for labels?

We've found that the command line flags are harder to maintain as well as they're not used in GKE.

@bharath-b-rh
Copy link
Author

bharath-b-rh commented Nov 3, 2023

@arkadeepsen @bharath-b-rh /cc @msau42

Do we think that adding driver command line flags is the right way to go? Those tend to be hard to configure as they're typically set with cluster setup. Would storage class parameters work better, as we also have for labels?

We've found that the command line flags are harder to maintain as well as they're not used in GKE.

@mattcary Yes, the implementation will have the provision for user to configure the required tags both as command line argument and as a parameter in StorageClass, same as labels. Command line option is helpful in the scenario, where the framework installing the driver has a common set of tags provided by the user for all the resources created by it and user can also add any specific or additional tags for GCP storage resources created by driver using the StorageClass resource object.
Please let me know your thoughts.

@bharath-b-rh
Copy link
Author

@mattcary Could you please help me with the PR reviews.

@bharath-b-rh
Copy link
Author

@mattcary Could you please help me with a tentative date when this and kubernetes-sigs/gcp-filestore-csi-driver#567, kubernetes-sigs/gcp-filestore-csi-driver#639 issues can be reviewed. Thank you!

cc: @msau42 @saad-ali

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
4 participants