This commit is contained in:
Nikola Jokic
2026-07-14 19:54:07 +02:00
parent 5f974df2de
commit ae9b446095
13 changed files with 213 additions and 94 deletions
@@ -40,8 +40,7 @@ import (
// +kubebuilder:printcolumn:JSONPath=".status.phase",name=Phase,type=string
// +kubebuilder:printcolumn:JSONPath=".status.pendingEphemeralRunners",name=Pending Runners,type=integer
// +kubebuilder:printcolumn:JSONPath=".status.runningEphemeralRunners",name=Running Runners,type=integer
// +kubebuilder:printcolumn:JSONPath=".status.finishedEphemeralRunners",name=Finished Runners,type=integer
// +kubebuilder:printcolumn:JSONPath=".status.deletingEphemeralRunners",name=Deleting Runners,type=integer
// +kubebuilder:printcolumn:JSONPath=".status.failedEphemeralRunners",name=Failed Runners,type=integer
// AutoscalingRunnerSet is the Schema for the autoscalingrunnersets API
type AutoscalingRunnerSet struct {
@@ -115,16 +114,16 @@ type AutoscalingRunnerSetSpec struct {
EphemeralRunnerConfigSecretMetadata *ResourceMeta `json:"ephemeralRunnerConfigSecretMetadata,omitempty"`
// +optional
// +kubebuilder:validation:Minimum:=0
// +kubebuilder:validation:Minimum=0
MaxRunners *int `json:"maxRunners,omitempty"`
// +optional
// +kubebuilder:validation:Minimum:=0
// +kubebuilder:validation:Minimum=0
MinRunners *int `json:"minRunners,omitempty"`
}
type TLSConfig struct {
// Required
// +required
CertificateFrom *TLSCertificateSource `json:"certificateFrom,omitempty"`
}
@@ -161,7 +160,7 @@ func (c *TLSConfig) ToCertPool(keyFetcher func(name, key string) ([]byte, error)
}
type TLSCertificateSource struct {
// Required
// +required
ConfigMapKeyRef *corev1.ConfigMapKeySelector `json:"configMapKeyRef,omitempty"`
}
@@ -262,7 +261,7 @@ func (c *ProxyConfig) ProxyFunc(secretFetcher func(string) (*corev1.Secret, erro
}
type ProxyServerConfig struct {
// Required
// +required
URL string `json:"url,omitempty"`
// +optional
@@ -76,10 +76,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -101,7 +100,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
image:
type: string
@@ -184,16 +187,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8772,16 +8777,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8794,6 +8801,17 @@ spec:
It is used to identify which vault integration should be used to resolve secrets.
type: string
type: object
required:
- autoscalingRunnerSetName
- autoscalingRunnerSetNamespace
- ephemeralRunnerSetName
- githubConfigSecret
- githubConfigUrl
- image
- imagePullSecrets
- maxRunners
- minRunners
- runnerScaleSetId
type: object
status:
description: AutoscalingListenerStatus defines the observed state of AutoscalingListener
@@ -33,11 +33,8 @@ spec:
- jsonPath: .status.runningEphemeralRunners
name: Running Runners
type: integer
- jsonPath: .status.finishedEphemeralRunners
name: Finished Runners
type: integer
- jsonPath: .status.deletingEphemeralRunners
name: Deleting Runners
- jsonPath: .status.failedEphemeralRunners
name: Failed Runners
type: integer
name: v1alpha1
schema:
@@ -119,10 +116,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -143,7 +139,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
listenerConfigSecretMetadata:
description: ResourceMeta carries metadata common to all internal resources
@@ -8364,16 +8364,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -16515,16 +16517,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -16537,6 +16541,10 @@ spec:
It is used to identify which vault integration should be used to resolve secrets.
type: string
type: object
required:
- githubConfigSecret
- githubConfigUrl
- template
type: object
status:
description: AutoscalingRunnerSetStatus defines the observed state of AutoscalingRunnerSet
@@ -89,10 +89,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -113,7 +112,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
metadata:
description: |-
@@ -144,16 +147,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8268,16 +8273,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -83,10 +83,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -107,7 +106,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
metadata:
description: |-
@@ -138,16 +141,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8262,16 +8267,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -76,10 +76,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -101,7 +100,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
image:
type: string
@@ -184,16 +187,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8772,16 +8777,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8794,6 +8801,17 @@ spec:
It is used to identify which vault integration should be used to resolve secrets.
type: string
type: object
required:
- autoscalingRunnerSetName
- autoscalingRunnerSetNamespace
- ephemeralRunnerSetName
- githubConfigSecret
- githubConfigUrl
- image
- imagePullSecrets
- maxRunners
- minRunners
- runnerScaleSetId
type: object
status:
description: AutoscalingListenerStatus defines the observed state of AutoscalingListener
@@ -33,11 +33,8 @@ spec:
- jsonPath: .status.runningEphemeralRunners
name: Running Runners
type: integer
- jsonPath: .status.finishedEphemeralRunners
name: Finished Runners
type: integer
- jsonPath: .status.deletingEphemeralRunners
name: Deleting Runners
- jsonPath: .status.failedEphemeralRunners
name: Failed Runners
type: integer
name: v1alpha1
schema:
@@ -119,10 +116,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -143,7 +139,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
listenerConfigSecretMetadata:
description: ResourceMeta carries metadata common to all internal resources
@@ -8364,16 +8364,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -16515,16 +16517,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -16537,6 +16541,10 @@ spec:
It is used to identify which vault integration should be used to resolve secrets.
type: string
type: object
required:
- githubConfigSecret
- githubConfigUrl
- template
type: object
status:
description: AutoscalingRunnerSetStatus defines the observed state of AutoscalingRunnerSet
@@ -89,10 +89,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -113,7 +112,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
metadata:
description: |-
@@ -144,16 +147,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8268,16 +8273,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -83,10 +83,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -107,7 +106,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
metadata:
description: |-
@@ -138,16 +141,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8262,16 +8267,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
+24 -6
View File
@@ -76,10 +76,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -101,7 +100,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
image:
type: string
@@ -184,16 +187,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8772,16 +8777,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8794,6 +8801,17 @@ spec:
It is used to identify which vault integration should be used to resolve secrets.
type: string
type: object
required:
- autoscalingRunnerSetName
- autoscalingRunnerSetNamespace
- ephemeralRunnerSetName
- githubConfigSecret
- githubConfigUrl
- image
- imagePullSecrets
- maxRunners
- minRunners
- runnerScaleSetId
type: object
status:
description: AutoscalingListenerStatus defines the observed state of AutoscalingListener
+19 -11
View File
@@ -33,11 +33,8 @@ spec:
- jsonPath: .status.runningEphemeralRunners
name: Running Runners
type: integer
- jsonPath: .status.finishedEphemeralRunners
name: Finished Runners
type: integer
- jsonPath: .status.deletingEphemeralRunners
name: Deleting Runners
- jsonPath: .status.failedEphemeralRunners
name: Failed Runners
type: integer
name: v1alpha1
schema:
@@ -119,10 +116,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -143,7 +139,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
listenerConfigSecretMetadata:
description: ResourceMeta carries metadata common to all internal resources
@@ -8364,16 +8364,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -16515,16 +16517,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -16537,6 +16541,10 @@ spec:
It is used to identify which vault integration should be used to resolve secrets.
type: string
type: object
required:
- githubConfigSecret
- githubConfigUrl
- template
type: object
status:
description: AutoscalingRunnerSetStatus defines the observed state of AutoscalingRunnerSet
+13 -6
View File
@@ -89,10 +89,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -113,7 +112,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
metadata:
description: |-
@@ -144,16 +147,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8268,16 +8273,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
+13 -6
View File
@@ -83,10 +83,9 @@ spec:
githubServerTLS:
properties:
certificateFrom:
description: Required
properties:
configMapKeyRef:
description: Required
description: Selects a key from a ConfigMap.
properties:
key:
description: The key to select.
@@ -107,7 +106,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
required:
- configMapKeyRef
type: object
required:
- certificateFrom
type: object
metadata:
description: |-
@@ -138,16 +141,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items:
@@ -8262,16 +8267,18 @@ spec:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
https:
properties:
credentialSecretRef:
type: string
url:
description: Required
type: string
required:
- url
type: object
noProxy:
items: