Skip to content

Commit be08812

Browse files
committed
fix: truncate proposal name in label values to 63 chars
The operator uses proposal.Name directly as a Kubernetes label value (agentic.openshift.io/proposal) when creating result CRs, RBAC resources, sandbox pods, and SandboxClaim CRs. Kubernetes label values are limited to 63 characters, so names exceeding this limit cause resource creation failures. Apply truncateK8sName() to proposalName in all four label-setting locations as defense in depth. Signed-off-by: Tomáš Remeš <tremes@redhat.com> Assisted-by: Claude Code:claude-opus-4-6
1 parent c7ae463 commit be08812

4 files changed

Lines changed: 4 additions & 4 deletions

File tree

controller/proposal/bare_pod_manager.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func (m *BarePodManager) Claim(ctx context.Context, proposalName, step, _ string
7272
Name: podName,
7373
Namespace: m.Namespace,
7474
Labels: map[string]string{
75-
LabelProposal: proposalName,
75+
LabelProposal: truncateK8sName(proposalName),
7676
LabelStep: step,
7777
},
7878
},

controller/proposal/rbac.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ func clusterRoleName(proposalName string) string {
228228

229229
func rbacLabels(proposalName, component string) map[string]string {
230230
return map[string]string{
231-
LabelProposal: proposalName,
231+
LabelProposal: truncateK8sName(proposalName),
232232
LabelComponent: component,
233233
}
234234
}

controller/proposal/results.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func proposalOwnerRef(proposal *agenticv1alpha1.Proposal) metav1.OwnerReference
3636

3737
func resultLabels(proposalName, step string) map[string]string {
3838
return map[string]string{
39-
LabelProposal: proposalName,
39+
LabelProposal: truncateK8sName(proposalName),
4040
LabelStep: step,
4141
}
4242
}

controller/proposal/sandbox.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ func (m *SandboxManager) buildClaim(claimName, proposalName, step, templateName
8080
"name": claimName,
8181
"namespace": m.Namespace,
8282
"labels": map[string]any{
83-
LabelProposal: proposalName,
83+
LabelProposal: truncateK8sName(proposalName),
8484
LabelStep: step,
8585
},
8686
},

0 commit comments

Comments
 (0)