diff --git a/controllers/constants.go b/controllers/constants.go index 5b67026b..510fa911 100644 --- a/controllers/constants.go +++ b/controllers/constants.go @@ -61,4 +61,7 @@ const ( // // See https://github.com/actions-runner-controller/actions-runner-controller/pull/1180 DefaultRunnerPodRecreationDelayAfterWebhookScale = 10 * time.Minute + + EnvVarRunnerName = "RUNNER_NAME" + EnvVarRunnerToken = "RUNNER_TOKEN" ) diff --git a/controllers/runner_controller.go b/controllers/runner_controller.go index 19ee36aa..5811494b 100644 --- a/controllers/runner_controller.go +++ b/controllers/runner_controller.go @@ -453,19 +453,12 @@ func (r *RunnerReconciler) newPod(runner v1alpha1.Runner) (corev1.Pod, error) { func mutatePod(pod *corev1.Pod, token string) *corev1.Pod { updated := pod.DeepCopy() - for i := range pod.Spec.Containers { - if pod.Spec.Containers[i].Name == "runner" { - updated.Spec.Containers[i].Env = append(updated.Spec.Containers[i].Env, - corev1.EnvVar{ - Name: "RUNNER_NAME", - Value: pod.ObjectMeta.Name, - }, - corev1.EnvVar{ - Name: "RUNNER_TOKEN", - Value: token, - }, - ) - } + if getRunnerEnv(pod, EnvVarRunnerName) == "" { + setRunnerEnv(updated, EnvVarRunnerName, pod.ObjectMeta.Name) + } + + if getRunnerEnv(pod, EnvVarRunnerToken) == "" { + setRunnerEnv(updated, EnvVarRunnerToken, token) } return updated