diff --git a/README.md b/README.md index 5b5e7a9..54cb5cb 100644 --- a/README.md +++ b/README.md @@ -1142,6 +1142,7 @@ spec: annotations: cluster-autoscaler.kubernetes.io/safe-to-evict: "true" spec: + priorityClassName: "high" nodeSelector: node-role.kubernetes.io/test: "" diff --git a/api/v1alpha1/runner_types.go b/api/v1alpha1/runner_types.go index a54a486..fa1e363 100644 --- a/api/v1alpha1/runner_types.go +++ b/api/v1alpha1/runner_types.go @@ -135,6 +135,9 @@ type RunnerPodSpec struct { // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` + // +optional + PriorityClassName string `json:"priorityClassName,omitempty"` + // +optional TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"` diff --git a/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerdeployments.yaml b/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerdeployments.yaml index c382631..77add74 100644 --- a/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerdeployments.yaml +++ b/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerdeployments.yaml @@ -3233,6 +3233,8 @@ spec: organization: pattern: ^[^/]+$ type: string + priorityClassName: + type: string repository: pattern: ^[^/]+/[^/]+$ type: string diff --git a/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerreplicasets.yaml b/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerreplicasets.yaml index 00ad021..549a9ea 100644 --- a/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerreplicasets.yaml +++ b/charts/actions-runner-controller/crds/actions.summerwind.dev_runnerreplicasets.yaml @@ -3230,6 +3230,8 @@ spec: organization: pattern: ^[^/]+$ type: string + priorityClassName: + type: string repository: pattern: ^[^/]+/[^/]+$ type: string diff --git a/charts/actions-runner-controller/crds/actions.summerwind.dev_runners.yaml b/charts/actions-runner-controller/crds/actions.summerwind.dev_runners.yaml index af93fb0..2953410 100644 --- a/charts/actions-runner-controller/crds/actions.summerwind.dev_runners.yaml +++ b/charts/actions-runner-controller/crds/actions.summerwind.dev_runners.yaml @@ -3171,6 +3171,8 @@ spec: organization: pattern: ^[^/]+$ type: string + priorityClassName: + type: string repository: pattern: ^[^/]+/[^/]+$ type: string diff --git a/config/crd/bases/actions.summerwind.dev_runnerdeployments.yaml b/config/crd/bases/actions.summerwind.dev_runnerdeployments.yaml index c382631..77add74 100644 --- a/config/crd/bases/actions.summerwind.dev_runnerdeployments.yaml +++ b/config/crd/bases/actions.summerwind.dev_runnerdeployments.yaml @@ -3233,6 +3233,8 @@ spec: organization: pattern: ^[^/]+$ type: string + priorityClassName: + type: string repository: pattern: ^[^/]+/[^/]+$ type: string diff --git a/config/crd/bases/actions.summerwind.dev_runnerreplicasets.yaml b/config/crd/bases/actions.summerwind.dev_runnerreplicasets.yaml index 00ad021..549a9ea 100644 --- a/config/crd/bases/actions.summerwind.dev_runnerreplicasets.yaml +++ b/config/crd/bases/actions.summerwind.dev_runnerreplicasets.yaml @@ -3230,6 +3230,8 @@ spec: organization: pattern: ^[^/]+$ type: string + priorityClassName: + type: string repository: pattern: ^[^/]+/[^/]+$ type: string diff --git a/config/crd/bases/actions.summerwind.dev_runners.yaml b/config/crd/bases/actions.summerwind.dev_runners.yaml index af93fb0..2953410 100644 --- a/config/crd/bases/actions.summerwind.dev_runners.yaml +++ b/config/crd/bases/actions.summerwind.dev_runners.yaml @@ -3171,6 +3171,8 @@ spec: organization: pattern: ^[^/]+$ type: string + priorityClassName: + type: string repository: pattern: ^[^/]+/[^/]+$ type: string diff --git a/controllers/runner_controller.go b/controllers/runner_controller.go index cfb0025..0f9a373 100644 --- a/controllers/runner_controller.go +++ b/controllers/runner_controller.go @@ -476,6 +476,10 @@ func (r *RunnerReconciler) newPod(runner v1alpha1.Runner) (corev1.Pod, error) { pod.Spec.Tolerations = runnerSpec.Tolerations } + if runnerSpec.PriorityClassName != "" { + pod.Spec.PriorityClassName = runnerSpec.PriorityClassName + } + if len(runnerSpec.TopologySpreadConstraints) != 0 { pod.Spec.TopologySpreadConstraints = runnerSpec.TopologySpreadConstraints }