Skip to content

Fix GCP resource labels for mixed-case owner#6737

Open
kiryl-filatau wants to merge 1 commit into
GoogleCloudPlatform:masterfrom
kiryl-filatau:gcp-tags-lower-fix
Open

Fix GCP resource labels for mixed-case owner#6737
kiryl-filatau wants to merge 1 commit into
GoogleCloudPlatform:masterfrom
kiryl-filatau:gcp-tags-lower-fix

Conversation

@kiryl-filatau
Copy link
Copy Markdown
Collaborator

Summary

GCP rejects resource labels if they contain uppercase letters (for example owner=Name_Surname). PKB now sends lowercase labels. GCE metadata (like enable-oslogin=FALSE) is not changed.


What broke

Running on GCP:

./pkb.py --cloud=GCP --benchmarks=kubernetes_scale

Cluster create failed:

ERROR: (gcloud.container.clusters.create) ResponseError: code=400, message=Invalid field 'resource_labels.value': 
"Name_Surname". It must only contain lowercase letters ([a-z]), numeric characters ([0-9]), underscores (_) and dashes (-). 
International characters are allowed.

Invalid field 'resource_labels.value': "Name_Surname"
(must be lowercase)

owner comes from the PKB --owner / system username and was passed to gcloud --labels without lowercasing.


Fix

In perfkitbenchmarker/providers/gcp/util.py:

  • MakeFormattedDefaultTags() → add .lower() (used for GCP --labels)
  • FormatTags() → no change (used for GCE --metadata)

One unit test: testMakeFormattedDefaultTagsLowercasesOwner.


How was tested

  • python3 -m pytest tests/providers/gcp/util_test.py::GcpUtilTest tests/providers/gcp/gce_managed_instance_group_test.py -v
  • ./pkb.py --cloud=GCP --benchmarks=kubernetes_scale — cluster create works, labels are lowercase

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant