Split listener pod label to avoid long names issue (#2341)
This commit is contained in:
		
							parent
							
								
									1df06a69d7
								
							
						
					
					
						commit
						2984de912c
					
				|  | @ -44,14 +44,9 @@ const ( | ||||||
| 	// TODO: Replace with shared image.
 | 	// TODO: Replace with shared image.
 | ||||||
| 	autoscalingRunnerSetOwnerKey      = ".metadata.controller" | 	autoscalingRunnerSetOwnerKey      = ".metadata.controller" | ||||||
| 	LabelKeyRunnerSpecHash            = "runner-spec-hash" | 	LabelKeyRunnerSpecHash            = "runner-spec-hash" | ||||||
| 	LabelKeyAutoScaleRunnerSetName    = "auto-scale-runner-set-name" |  | ||||||
| 	autoscalingRunnerSetFinalizerName = "autoscalingrunnerset.actions.github.com/finalizer" | 	autoscalingRunnerSetFinalizerName = "autoscalingrunnerset.actions.github.com/finalizer" | ||||||
| 	runnerScaleSetIdKey               = "runner-scale-set-id" | 	runnerScaleSetIdKey               = "runner-scale-set-id" | ||||||
| 	runnerScaleSetRunnerGroupNameKey  = "runner-scale-set-runner-group-name" | 	runnerScaleSetRunnerGroupNameKey  = "runner-scale-set-runner-group-name" | ||||||
| 
 |  | ||||||
| 	// scaleSetListenerLabel is the key of pod.meta.labels to label
 |  | ||||||
| 	// that the pod is a listener application
 |  | ||||||
| 	scaleSetListenerLabel = "runner-scale-set-listener" |  | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| // AutoscalingRunnerSetReconciler reconciles a AutoscalingRunnerSet object
 | // AutoscalingRunnerSetReconciler reconciles a AutoscalingRunnerSet object
 | ||||||
|  |  | ||||||
|  | @ -14,16 +14,20 @@ import ( | ||||||
| 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
|  | // secret constants
 | ||||||
| const ( | const ( | ||||||
| 	jitTokenKey = "jitToken" | 	jitTokenKey = "jitToken" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
|  | // labels applied to resources
 | ||||||
|  | const ( | ||||||
|  | 	LabelKeyAutoScaleRunnerSetName      = "auto-scaling-runner-set-name" | ||||||
|  | 	LabelKeyAutoScaleRunnerSetNamespace = "auto-scaling-runner-set-namespace" | ||||||
|  | ) | ||||||
|  | 
 | ||||||
| type resourceBuilder struct{} | type resourceBuilder struct{} | ||||||
| 
 | 
 | ||||||
| func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.AutoscalingListener, serviceAccount *corev1.ServiceAccount, secret *corev1.Secret, envs ...corev1.EnvVar) *corev1.Pod { | func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.AutoscalingListener, serviceAccount *corev1.ServiceAccount, secret *corev1.Secret, envs ...corev1.EnvVar) *corev1.Pod { | ||||||
| 	newLabels := map[string]string{} |  | ||||||
| 	newLabels[scaleSetListenerLabel] = fmt.Sprintf("%v-%v", autoscalingListener.Spec.AutoscalingRunnerSetNamespace, autoscalingListener.Spec.AutoscalingRunnerSetName) |  | ||||||
| 
 |  | ||||||
| 	listenerEnv := []corev1.EnvVar{ | 	listenerEnv := []corev1.EnvVar{ | ||||||
| 		{ | 		{ | ||||||
| 			Name:  "GITHUB_CONFIGURE_URL", | 			Name:  "GITHUB_CONFIGURE_URL", | ||||||
|  | @ -133,7 +137,10 @@ func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.A | ||||||
| 		ObjectMeta: metav1.ObjectMeta{ | 		ObjectMeta: metav1.ObjectMeta{ | ||||||
| 			Name:      autoscalingListener.Name, | 			Name:      autoscalingListener.Name, | ||||||
| 			Namespace: autoscalingListener.Namespace, | 			Namespace: autoscalingListener.Namespace, | ||||||
| 			Labels:    newLabels, | 			Labels: map[string]string{ | ||||||
|  | 				LabelKeyAutoScaleRunnerSetNamespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
|  | 				LabelKeyAutoScaleRunnerSetName:      autoscalingListener.Spec.AutoscalingRunnerSetName, | ||||||
|  | 			}, | ||||||
| 		}, | 		}, | ||||||
| 		Spec: podSpec, | 		Spec: podSpec, | ||||||
| 	} | 	} | ||||||
|  | @ -180,8 +187,8 @@ func (b *resourceBuilder) newScaleSetListenerServiceAccount(autoscalingListener | ||||||
| 			Name:      scaleSetListenerServiceAccountName(autoscalingListener), | 			Name:      scaleSetListenerServiceAccountName(autoscalingListener), | ||||||
| 			Namespace: autoscalingListener.Namespace, | 			Namespace: autoscalingListener.Namespace, | ||||||
| 			Labels: map[string]string{ | 			Labels: map[string]string{ | ||||||
| 				"auto-scaling-runner-set-namespace": autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 				LabelKeyAutoScaleRunnerSetNamespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
| 				"auto-scaling-runner-set-name":      autoscalingListener.Spec.AutoscalingRunnerSetName, | 				LabelKeyAutoScaleRunnerSetName:      autoscalingListener.Spec.AutoscalingRunnerSetName, | ||||||
| 			}, | 			}, | ||||||
| 		}, | 		}, | ||||||
| 	} | 	} | ||||||
|  | @ -195,8 +202,8 @@ func (b *resourceBuilder) newScaleSetListenerRole(autoscalingListener *v1alpha1. | ||||||
| 			Name:      scaleSetListenerRoleName(autoscalingListener), | 			Name:      scaleSetListenerRoleName(autoscalingListener), | ||||||
| 			Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 			Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
| 			Labels: map[string]string{ | 			Labels: map[string]string{ | ||||||
| 				"auto-scaling-runner-set-namespace": autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 				LabelKeyAutoScaleRunnerSetNamespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
| 				"auto-scaling-runner-set-name":      autoscalingListener.Spec.AutoscalingRunnerSetName, | 				LabelKeyAutoScaleRunnerSetName:      autoscalingListener.Spec.AutoscalingRunnerSetName, | ||||||
| 				"auto-scaling-listener-namespace":   autoscalingListener.Namespace, | 				"auto-scaling-listener-namespace":   autoscalingListener.Namespace, | ||||||
| 				"auto-scaling-listener-name":        autoscalingListener.Name, | 				"auto-scaling-listener-name":        autoscalingListener.Name, | ||||||
| 				"role-policy-rules-hash":            rulesHash, | 				"role-policy-rules-hash":            rulesHash, | ||||||
|  | @ -229,8 +236,8 @@ func (b *resourceBuilder) newScaleSetListenerRoleBinding(autoscalingListener *v1 | ||||||
| 			Name:      scaleSetListenerRoleName(autoscalingListener), | 			Name:      scaleSetListenerRoleName(autoscalingListener), | ||||||
| 			Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 			Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
| 			Labels: map[string]string{ | 			Labels: map[string]string{ | ||||||
| 				"auto-scaling-runner-set-namespace": autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 				LabelKeyAutoScaleRunnerSetNamespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
| 				"auto-scaling-runner-set-name":      autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 				LabelKeyAutoScaleRunnerSetName:      autoscalingListener.Spec.AutoscalingRunnerSetName, | ||||||
| 				"auto-scaling-listener-namespace":   autoscalingListener.Namespace, | 				"auto-scaling-listener-namespace":   autoscalingListener.Namespace, | ||||||
| 				"auto-scaling-listener-name":        autoscalingListener.Name, | 				"auto-scaling-listener-name":        autoscalingListener.Name, | ||||||
| 				"role-binding-role-ref-hash":        roleRefHash, | 				"role-binding-role-ref-hash":        roleRefHash, | ||||||
|  | @ -252,8 +259,8 @@ func (b *resourceBuilder) newScaleSetListenerSecretMirror(autoscalingListener *v | ||||||
| 			Name:      scaleSetListenerSecretMirrorName(autoscalingListener), | 			Name:      scaleSetListenerSecretMirrorName(autoscalingListener), | ||||||
| 			Namespace: autoscalingListener.Namespace, | 			Namespace: autoscalingListener.Namespace, | ||||||
| 			Labels: map[string]string{ | 			Labels: map[string]string{ | ||||||
| 				"auto-scaling-runner-set-namespace": autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | 				LabelKeyAutoScaleRunnerSetNamespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, | ||||||
| 				"auto-scaling-runner-set-name":      autoscalingListener.Spec.AutoscalingRunnerSetName, | 				LabelKeyAutoScaleRunnerSetName:      autoscalingListener.Spec.AutoscalingRunnerSetName, | ||||||
| 				"secret-data-hash":                  dataHash, | 				"secret-data-hash":                  dataHash, | ||||||
| 			}, | 			}, | ||||||
| 		}, | 		}, | ||||||
|  | @ -283,8 +290,8 @@ func (b *resourceBuilder) newAutoScalingListener(autoscalingRunnerSet *v1alpha1. | ||||||
| 			Name:      scaleSetListenerName(autoscalingRunnerSet), | 			Name:      scaleSetListenerName(autoscalingRunnerSet), | ||||||
| 			Namespace: namespace, | 			Namespace: namespace, | ||||||
| 			Labels: map[string]string{ | 			Labels: map[string]string{ | ||||||
| 				"auto-scaling-runner-set-namespace": autoscalingRunnerSet.Namespace, | 				LabelKeyAutoScaleRunnerSetNamespace: autoscalingRunnerSet.Namespace, | ||||||
| 				"auto-scaling-runner-set-name":      autoscalingRunnerSet.Name, | 				LabelKeyAutoScaleRunnerSetName:      autoscalingRunnerSet.Name, | ||||||
| 				LabelKeyRunnerSpecHash:              autoscalingRunnerSet.ListenerSpecHash(), | 				LabelKeyRunnerSpecHash:              autoscalingRunnerSet.ListenerSpecHash(), | ||||||
| 			}, | 			}, | ||||||
| 		}, | 		}, | ||||||
|  |  | ||||||
|  | @ -135,7 +135,7 @@ You can check the logs of the controller pod using the following command: | ||||||
| $ kubectl logs -n "${NAMESPACE}" -l app.kubernetes.io/name=gha-runner-scale-set-controller | $ kubectl logs -n "${NAMESPACE}" -l app.kubernetes.io/name=gha-runner-scale-set-controller | ||||||
| 
 | 
 | ||||||
| # Runner set listener logs | # Runner set listener logs | ||||||
| kubectl logs -n "${NAMESPACE}" -l runner-scale-set-listener=arc-systems-arc-runner-set | kubectl logs -n "${NAMESPACE}" -l auto-scaling-runner-set-namespace=arc-systems -l auto-scaling-runner-set-name=arc-runner-set | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ### Naming error: `Name must have up to characters` | ### Naming error: `Name must have up to characters` | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue