GoogleContainerTools / GoogleContainerTools/config-sync

Feature Request: Increase max RepoSync name length to 63 characters

Open
#949 5 comments 2 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
277
Forks
59
Avg merge
1d 23h
Merged PRs (30d)
26

Description

RepoSync: Label character limit at 63

We’d like to use more descriptive names which is another issue.
In the future we'll have plenty of RepoSync objects deployed to the cluster so we need to have good naming convention for them.
When using longer, more descriptive names we're facing following error:

Deployment.apps "ns-reconciler-abcd-1234567-asddffgh000-xyz-asdfghjt-abc-reposync-8" is invalid: [spec.selector.matchLabels: Invalid value: "ns-reconciler-abcd-1234567-asddffgh000-xyz-asdfghjt-abc-reposync-8": must be no more than 63 characters, spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app":"reconciler", "[configsync.gke.io/deployment-name](https://www.google.com/url?q=http://configsync.gke.io/deployment-name&sa=D&source=buganizer&usg=AOvVaw37Zux4pRVlR1sTS2vY5Ogl)":"ns-reconciler-abcd-1234567-asddffgh000-xyz-asdfghjt-abc-reposync-8"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: invalid label selector]

Deployment name is build from following pieces: ns-reconciler-${namespace}-${reposyncname}-${number}
Given that namespace and reposync names can be up to 63 characters it's not easy for reconcilers deployments to have names shorter than 63 characters which is combination of elements mentioned before.
In our implementation we would like label selector to be able to accept labels longer than 63 characters.

We are aware that changing label character limit is a deep change in Kubernetes so our alternative request is to use different label selector in the process.

https://cloud.google.com/anthos-config-management/docs/reference/labels-and-annotations

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.