@@ -85,13 +85,13 @@ func (b *resourceBuilder) newAutoScalingListener(autoscalingRunnerSet *v1alpha1.
8585 effectiveMinRunners = * autoscalingRunnerSet .Spec .MinRunners
8686 }
8787
88- labels := map [string ]string {
88+ labels := mergeLabels ( autoscalingRunnerSet . Labels , map [string ]string {
8989 LabelKeyGitHubScaleSetNamespace : autoscalingRunnerSet .Namespace ,
9090 LabelKeyGitHubScaleSetName : autoscalingRunnerSet .Name ,
9191 LabelKeyKubernetesPartOf : labelValueKubernetesPartOf ,
9292 LabelKeyKubernetesComponent : "runner-scale-set-listener" ,
9393 LabelKeyKubernetesVersion : autoscalingRunnerSet .Labels [LabelKeyKubernetesVersion ],
94- }
94+ })
9595
9696 annotations := map [string ]string {
9797 annotationKeyRunnerSpecHash : autoscalingRunnerSet .ListenerSpecHash (),
@@ -411,10 +411,10 @@ func (b *resourceBuilder) newScaleSetListenerServiceAccount(autoscalingListener
411411 ObjectMeta : metav1.ObjectMeta {
412412 Name : scaleSetListenerServiceAccountName (autoscalingListener ),
413413 Namespace : autoscalingListener .Namespace ,
414- Labels : map [string ]string {
414+ Labels : mergeLabels ( autoscalingListener . Labels , map [string ]string {
415415 LabelKeyGitHubScaleSetNamespace : autoscalingListener .Spec .AutoscalingRunnerSetNamespace ,
416416 LabelKeyGitHubScaleSetName : autoscalingListener .Spec .AutoscalingRunnerSetName ,
417- },
417+ }) ,
418418 },
419419 }
420420}
@@ -426,13 +426,13 @@ func (b *resourceBuilder) newScaleSetListenerRole(autoscalingListener *v1alpha1.
426426 ObjectMeta : metav1.ObjectMeta {
427427 Name : scaleSetListenerRoleName (autoscalingListener ),
428428 Namespace : autoscalingListener .Spec .AutoscalingRunnerSetNamespace ,
429- Labels : map [string ]string {
429+ Labels : mergeLabels ( autoscalingListener . Labels , map [string ]string {
430430 LabelKeyGitHubScaleSetNamespace : autoscalingListener .Spec .AutoscalingRunnerSetNamespace ,
431431 LabelKeyGitHubScaleSetName : autoscalingListener .Spec .AutoscalingRunnerSetName ,
432432 labelKeyListenerNamespace : autoscalingListener .Namespace ,
433433 labelKeyListenerName : autoscalingListener .Name ,
434434 "role-policy-rules-hash" : rulesHash ,
435- },
435+ }) ,
436436 },
437437 Rules : rules ,
438438 }
@@ -460,14 +460,14 @@ func (b *resourceBuilder) newScaleSetListenerRoleBinding(autoscalingListener *v1
460460 ObjectMeta : metav1.ObjectMeta {
461461 Name : scaleSetListenerRoleName (autoscalingListener ),
462462 Namespace : autoscalingListener .Spec .AutoscalingRunnerSetNamespace ,
463- Labels : map [string ]string {
463+ Labels : mergeLabels ( autoscalingListener . Labels , map [string ]string {
464464 LabelKeyGitHubScaleSetNamespace : autoscalingListener .Spec .AutoscalingRunnerSetNamespace ,
465465 LabelKeyGitHubScaleSetName : autoscalingListener .Spec .AutoscalingRunnerSetName ,
466466 labelKeyListenerNamespace : autoscalingListener .Namespace ,
467467 labelKeyListenerName : autoscalingListener .Name ,
468468 "role-binding-role-ref-hash" : roleRefHash ,
469469 "role-binding-subject-hash" : subjectHash ,
470- },
470+ }) ,
471471 },
472472 RoleRef : roleRef ,
473473 Subjects : subjects ,
@@ -483,11 +483,11 @@ func (b *resourceBuilder) newScaleSetListenerSecretMirror(autoscalingListener *v
483483 ObjectMeta : metav1.ObjectMeta {
484484 Name : scaleSetListenerSecretMirrorName (autoscalingListener ),
485485 Namespace : autoscalingListener .Namespace ,
486- Labels : map [string ]string {
486+ Labels : mergeLabels ( autoscalingListener . Labels , map [string ]string {
487487 LabelKeyGitHubScaleSetNamespace : autoscalingListener .Spec .AutoscalingRunnerSetNamespace ,
488488 LabelKeyGitHubScaleSetName : autoscalingListener .Spec .AutoscalingRunnerSetName ,
489489 "secret-data-hash" : dataHash ,
490- },
490+ }) ,
491491 },
492492 Data : secret .DeepCopy ().Data ,
493493 }
@@ -502,13 +502,13 @@ func (b *resourceBuilder) newEphemeralRunnerSet(autoscalingRunnerSet *v1alpha1.A
502502 }
503503 runnerSpecHash := autoscalingRunnerSet .RunnerSetSpecHash ()
504504
505- labels := map [string ]string {
505+ labels := mergeLabels ( autoscalingRunnerSet . Labels , map [string ]string {
506506 LabelKeyKubernetesPartOf : labelValueKubernetesPartOf ,
507507 LabelKeyKubernetesComponent : "runner-set" ,
508508 LabelKeyKubernetesVersion : autoscalingRunnerSet .Labels [LabelKeyKubernetesVersion ],
509509 LabelKeyGitHubScaleSetName : autoscalingRunnerSet .Name ,
510510 LabelKeyGitHubScaleSetNamespace : autoscalingRunnerSet .Namespace ,
511- }
511+ })
512512
513513 if err := applyGitHubURLLabels (autoscalingRunnerSet .Spec .GitHubConfigUrl , labels ); err != nil {
514514 return nil , fmt .Errorf ("failed to apply GitHub URL labels: %v" , err )
@@ -547,18 +547,14 @@ func (b *resourceBuilder) newEphemeralRunnerSet(autoscalingRunnerSet *v1alpha1.A
547547
548548func (b * resourceBuilder ) newEphemeralRunner (ephemeralRunnerSet * v1alpha1.EphemeralRunnerSet ) * v1alpha1.EphemeralRunner {
549549 labels := make (map [string ]string )
550- for _ , key := range commonLabelKeys {
551- switch key {
552- case LabelKeyKubernetesComponent :
553- labels [key ] = "runner"
554- default :
555- v , ok := ephemeralRunnerSet .Labels [key ]
556- if ! ok {
557- continue
558- }
559- labels [key ] = v
550+ for k , v := range ephemeralRunnerSet .Labels {
551+ if k == LabelKeyKubernetesComponent {
552+ labels [k ] = "runner"
553+ } else {
554+ labels [k ] = v
560555 }
561556 }
557+
562558 annotations := make (map [string ]string )
563559 for key , val := range ephemeralRunnerSet .Annotations {
564560 annotations [key ] = val
@@ -751,3 +747,17 @@ func trimLabelValue(val string) string {
751747 }
752748 return val
753749}
750+
751+ func mergeLabels (base , overwrite map [string ]string ) map [string ]string {
752+ mergedLabels := map [string ]string {}
753+
754+ for k , v := range base {
755+ mergedLabels [k ] = v
756+ }
757+
758+ for k , v := range overwrite {
759+ mergedLabels [k ] = v
760+ }
761+
762+ return mergedLabels
763+ }
0 commit comments