Compare commits

..

13 Commits

Author SHA1 Message Date
Nikola Jokic
b511953df7 Trim down metrics cardinality (#3003) 2023-10-20 12:20:30 +02:00
Nikola Jokic
2117fd1892 Configure listener pod with the secret instead of env (#2965)
Co-authored-by: Bassem Dghaidi <568794+Link-@users.noreply.github.com>
2023-10-19 12:29:32 +02:00
kahirokunn
e1edb84abe chore: Service accounts in Kubernetes mode can now be annotated. (#2566)
Signed-off-by: kahirokunn <okinakahiro@gmail.com>
2023-10-18 13:37:39 +02:00
Yusuke Kuoka
f14dbd68f1 Bump Kubernetes client to 1.26.4 (#2991) 2023-10-16 15:45:25 +02:00
Nikola Jokic
bffcb32b19 Fix role and rolebinding cleanup for the listener controller (#2970) 2023-10-16 12:40:38 +02:00
Nikola Jokic
ea2443a410 Include separate reports associated with Bug/Feature templates (#2938) 2023-10-16 11:49:23 +02:00
John Sudol
ba91c183b5 Update CODEOWNERS to Launch team (#2979) 2023-10-11 10:10:12 -04:00
github-actions[bot]
e10a1cc7a3 Updates: runner to v2.310.2 (#2980)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-10-11 08:32:02 -04:00
Waldek Herka
ce80adb9ab Allow custom labels to be specified for controller pods (#2952)
Co-authored-by: Waldek Herka <waldek.herka@no.reply>
2023-10-06 10:56:40 +02:00
Nikola Jokic
1a8abb6d39 Prepare 0.6.1 release (#2929) 2023-09-26 11:40:48 +02:00
Nikola Jokic
fdf7b6c525 Fix nil map when annotations are applied (#2916)
Co-authored-by: Hidetake Iwata <int128@gmail.com>
2023-09-26 11:21:16 +02:00
Nikola Jokic
db061b33e7 Fix name override labels when runnerScaleSetName value is set (#2915) 2023-09-26 11:17:04 +02:00
github-actions[bot]
ead26ab18f Updates: container-hooks to v0.4.0 (#2928)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-09-26 11:12:32 +02:00
62 changed files with 1492 additions and 946 deletions

View File

@@ -1,5 +1,8 @@
blank_issues_enabled: false blank_issues_enabled: false
contact_links: contact_links:
- name: Feature requests for the gha-runner-scale-set (actions.github.com API group)
about: Feature requests associated with the actions.github.com group should be posted on the GitHub Community Support Forum
url: https://github.com/orgs/community/discussions/categories/actions
- name: Sponsor ARC Maintainers - name: Sponsor ARC Maintainers
about: If your business relies on the continued maintainance of actions-runner-controller, please consider sponsoring the project and the maintainers. about: If your business relies on the continued maintainance of actions-runner-controller, please consider sponsoring the project and the maintainers.
url: https://github.com/actions/actions-runner-controller/tree/master/CODEOWNERS url: https://github.com/actions/actions-runner-controller/tree/master/CODEOWNERS

View File

@@ -0,0 +1,113 @@
name: Bug Report (actions.github.com API group)
description: File a bug report for actions.github.com API group
title: "<Please write what didn't work for you here>"
labels: ["bug", "needs triage", "gha-runner-scale-set"]
body:
- type: checkboxes
id: read-troubleshooting-guide
attributes:
label: Checks
description: Please check all the boxes below before submitting
options:
- label: I've already read https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/troubleshooting-actions-runner-controller-errors and I'm sure my issue is not covered in the troubleshooting guide.
required: true
- label: I am using charts that are officially provided
- type: input
id: controller-version
attributes:
label: Controller Version
description: Refers to semver-like release tags for controller versions. Any release tags prefixed with `gha-runner-scale-set-` are releases associated with this API group
placeholder: ex. 0.6.1
validations:
required: true
- type: dropdown
id: deployment-method
attributes:
label: Deployment Method
description: Which deployment method did you use to install ARC?
options:
- Helm
- Kustomize
- ArgoCD
- Other
validations:
required: true
- type: checkboxes
id: checks
attributes:
label: Checks
description: Please check all the boxes below before submitting
options:
- label: This isn't a question or user support case (For Q&A and community support, go to [Discussions](https://github.com/actions/actions-runner-controller/discussions)).
required: true
- label: I've read the [Changelog](https://github.com/actions/actions-runner-controller/blob/master/docs/gha-runner-scale-set-controller/README.md#changelog) before submitting this issue and I'm sure it's not due to any recently-introduced backward-incompatible changes
required: true
- type: textarea
id: reproduction-steps
attributes:
label: To Reproduce
description: "Steps to reproduce the behavior"
render: markdown
placeholder: |
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
validations:
required: true
- type: textarea
id: actual-behavior
attributes:
label: Describe the bug
description: Also tell us, what did happen?
placeholder: A clear and concise description of what happened.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: Describe the expected behavior
description: Also tell us, what did you expect to happen?
placeholder: A clear and concise description of what the expected behavior is.
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: Additional Context
render: yaml
description: |
Provide `values.yaml` files that are relevant for this issue. PLEASE REDACT ANY INFORMATION THAT SHOULD NOT BE PUBLICALY AVAILABLE, LIKE GITHUB TOKEN FOR EXAMPLE.
placeholder: |
PLEASE REDACT ANY INFORMATION THAT SHOULD NOT BE PUBLICALY AVAILABLE, LIKE GITHUB TOKEN FOR EXAMPLE.
validations:
required: true
- type: textarea
id: controller-logs
attributes:
label: Controller Logs
description: "NEVER EVER OMIT THIS! Include complete logs from `actions-runner-controller`'s controller-manager pod."
render: shell
placeholder: |
PROVIDE THE LOGS VIA A GIST LINK (https://gist.github.com/), NOT DIRECTLY IN THIS TEXT AREA
To grab controller logs:
kubectl logs -n $NAMESPACE deployments/$CONTROLLER_DEPLOYMENT
validations:
required: true
- type: textarea
id: runner-pod-logs
attributes:
label: Runner Pod Logs
description: "Include logs and kubectl describe output from runner pod(s)."
render: shell
placeholder: |
PROVIDE THE WHOLE LOGS VIA A GIST LINK (https://gist.github.com/), NOT DIRECTLY IN THIS TEXT AREA
validations:
required: true

View File

@@ -1,7 +1,7 @@
name: Bug Report name: Bug Report (actions.summerwind.net API group)
description: File a bug report description: File a bug report for actions.summerwind.net API group
title: "<Please write what didn't work for you here>" title: "<Please write what didn't work for you here>"
labels: ["bug", "needs triage"] labels: ["bug", "needs triage", "community"]
body: body:
- type: checkboxes - type: checkboxes
id: read-troubleshooting-guide id: read-troubleshooting-guide

View File

@@ -1,7 +1,7 @@
--- ---
name: Feature request name: Feature request (actions.summerwind.net API group)
about: Suggest an idea for this project about: Suggest an idea for this project
labels: ["enhancement", "needs triage"] labels: ["enhancement", "needs triage", "community"]
title: '' title: ''
assignees: '' assignees: ''
--- ---

View File

@@ -16,7 +16,7 @@ env:
TARGET_ORG: actions-runner-controller TARGET_ORG: actions-runner-controller
TARGET_REPO: arc_e2e_test_dummy TARGET_REPO: arc_e2e_test_dummy
IMAGE_NAME: "arc-test-image" IMAGE_NAME: "arc-test-image"
IMAGE_VERSION: "0.6.0" IMAGE_VERSION: "0.6.1"
concurrency: concurrency:
# This will make sure we only apply the concurrency limits on pull requests # This will make sure we only apply the concurrency limits on pull requests

View File

@@ -1,2 +1,2 @@
# actions-runner-controller maintainers # actions-runner-controller maintainers
* @mumoshu @toast-gear @actions/actions-runtime @nikola-jokic * @mumoshu @toast-gear @actions/actions-launch @nikola-jokic

View File

@@ -6,7 +6,7 @@ endif
DOCKER_USER ?= $(shell echo ${DOCKER_IMAGE_NAME} | cut -d / -f1) DOCKER_USER ?= $(shell echo ${DOCKER_IMAGE_NAME} | cut -d / -f1)
VERSION ?= dev VERSION ?= dev
COMMIT_SHA = $(shell git rev-parse HEAD) COMMIT_SHA = $(shell git rev-parse HEAD)
RUNNER_VERSION ?= 2.309.0 RUNNER_VERSION ?= 2.310.2
TARGETPLATFORM ?= $(shell arch) TARGETPLATFORM ?= $(shell arch)
RUNNER_NAME ?= ${DOCKER_USER}/actions-runner RUNNER_NAME ?= ${DOCKER_USER}/actions-runner
RUNNER_TAG ?= ${VERSION} RUNNER_TAG ?= ${VERSION}

View File

@@ -767,7 +767,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -832,7 +832,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -915,7 +915,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1051,7 +1051,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1116,7 +1116,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1274,7 +1274,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1557,7 +1557,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1873,7 +1873,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1938,7 +1938,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2021,7 +2021,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2157,7 +2157,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2222,7 +2222,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2380,7 +2380,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2714,7 +2714,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2779,7 +2779,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2862,7 +2862,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2998,7 +2998,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3063,7 +3063,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3221,7 +3221,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3368,7 +3368,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3654,7 +3654,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3719,7 +3719,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3802,7 +3802,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3938,7 +3938,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4003,7 +4003,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4161,7 +4161,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4741,7 +4741,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5391,7 +5391,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -749,7 +749,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -814,7 +814,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -897,7 +897,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1033,7 +1033,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1098,7 +1098,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1256,7 +1256,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1539,7 +1539,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1855,7 +1855,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1920,7 +1920,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2003,7 +2003,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2139,7 +2139,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2204,7 +2204,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2362,7 +2362,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2696,7 +2696,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2761,7 +2761,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2844,7 +2844,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2980,7 +2980,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3045,7 +3045,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3203,7 +3203,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3350,7 +3350,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3636,7 +3636,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3701,7 +3701,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3784,7 +3784,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3920,7 +3920,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3985,7 +3985,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4143,7 +4143,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4723,7 +4723,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5373,7 +5373,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -701,7 +701,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -766,7 +766,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -849,7 +849,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -985,7 +985,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1050,7 +1050,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1208,7 +1208,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1491,7 +1491,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1807,7 +1807,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1872,7 +1872,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1955,7 +1955,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2091,7 +2091,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2156,7 +2156,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2314,7 +2314,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2648,7 +2648,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2713,7 +2713,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2796,7 +2796,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2932,7 +2932,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2997,7 +2997,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3155,7 +3155,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3302,7 +3302,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3588,7 +3588,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3653,7 +3653,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3736,7 +3736,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3872,7 +3872,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3937,7 +3937,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4095,7 +4095,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4675,7 +4675,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5325,7 +5325,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -836,7 +836,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -901,7 +901,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -984,7 +984,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1120,7 +1120,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1185,7 +1185,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1343,7 +1343,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1666,7 +1666,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1731,7 +1731,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1814,7 +1814,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1950,7 +1950,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2015,7 +2015,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2173,7 +2173,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2508,7 +2508,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2573,7 +2573,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2656,7 +2656,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2792,7 +2792,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2857,7 +2857,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3015,7 +3015,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3769,7 +3769,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4511,7 +4511,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4666,7 +4666,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -15,13 +15,13 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.6.0 version: 0.6.1
# This is the version number of the application being deployed. This version number should be # This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to # incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "0.6.0" appVersion: "0.6.1"
home: https://github.com/actions/actions-runner-controller home: https://github.com/actions/actions-runner-controller

View File

@@ -796,7 +796,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -861,7 +861,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -944,7 +944,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1080,7 +1080,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1145,7 +1145,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1306,7 +1306,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1629,7 +1629,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1694,7 +1694,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1777,7 +1777,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1913,7 +1913,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1978,7 +1978,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2139,7 +2139,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2474,7 +2474,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2539,7 +2539,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2622,7 +2622,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2758,7 +2758,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2823,7 +2823,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2984,7 +2984,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3738,7 +3738,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -754,7 +754,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -819,7 +819,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -902,7 +902,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1038,7 +1038,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1103,7 +1103,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1264,7 +1264,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1587,7 +1587,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1652,7 +1652,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1735,7 +1735,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1871,7 +1871,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1936,7 +1936,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2097,7 +2097,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2432,7 +2432,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2497,7 +2497,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2580,7 +2580,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2716,7 +2716,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2781,7 +2781,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2942,7 +2942,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3696,7 +3696,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5043,7 +5043,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5108,7 +5108,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5191,7 +5191,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5327,7 +5327,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5392,7 +5392,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5550,7 +5550,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5873,7 +5873,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5938,7 +5938,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6021,7 +6021,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6157,7 +6157,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6222,7 +6222,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -6380,7 +6380,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6715,7 +6715,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6780,7 +6780,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6863,7 +6863,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6999,7 +6999,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -7064,7 +7064,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -7222,7 +7222,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -7976,7 +7976,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -779,7 +779,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -844,7 +844,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -927,7 +927,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1063,7 +1063,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1128,7 +1128,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1286,7 +1286,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1609,7 +1609,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1674,7 +1674,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1757,7 +1757,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1893,7 +1893,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1958,7 +1958,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2116,7 +2116,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2451,7 +2451,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2516,7 +2516,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2599,7 +2599,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2735,7 +2735,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2800,7 +2800,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2958,7 +2958,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3712,7 +3712,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -773,7 +773,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -838,7 +838,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -921,7 +921,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1057,7 +1057,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1122,7 +1122,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1280,7 +1280,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1603,7 +1603,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1668,7 +1668,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1751,7 +1751,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1887,7 +1887,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1952,7 +1952,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2110,7 +2110,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2445,7 +2445,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2510,7 +2510,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2593,7 +2593,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2729,7 +2729,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2794,7 +2794,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2952,7 +2952,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3706,7 +3706,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -27,6 +27,9 @@ spec:
app.kubernetes.io/component: controller-manager app.kubernetes.io/component: controller-manager
app.kubernetes.io/version: {{ .Chart.Version }} app.kubernetes.io/version: {{ .Chart.Version }}
{{- include "gha-runner-scale-set-controller.selectorLabels" . | nindent 8 }} {{- include "gha-runner-scale-set-controller.selectorLabels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec: spec:
{{- with .Values.imagePullSecrets }} {{- with .Values.imagePullSecrets }}
imagePullSecrets: imagePullSecrets:

View File

@@ -41,6 +41,8 @@ serviceAccount:
podAnnotations: {} podAnnotations: {}
podLabels: {}
podSecurityContext: {} podSecurityContext: {}
# fsGroup: 2000 # fsGroup: 2000

View File

@@ -15,13 +15,13 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes # This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.6.0 version: 0.6.1
# This is the version number of the application being deployed. This version number should be # This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to # incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using. # follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes. # It is recommended to use it with quotes.
appVersion: "0.6.0" appVersion: "0.6.1"
home: https://github.com/actions/dev-arc home: https://github.com/actions/dev-arc

View File

@@ -10,6 +10,10 @@ gha-rs
{{- default (include "gha-base-name" .) .Values.nameOverride | trunc 63 | trimSuffix "-" }} {{- default (include "gha-base-name" .) .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }} {{- end }}
{{- define "gha-runner-scale-set.scale-set-name" -}}
{{ .Values.runnerScaleSetName | default .Release.Name }}
{{- end }}
{{/* {{/*
Create a default fully qualified app name. Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
@@ -17,7 +21,7 @@ If release name contains chart name it will be used as a full name.
*/}} */}}
{{- define "gha-runner-scale-set.fullname" -}} {{- define "gha-runner-scale-set.fullname" -}}
{{- $name := default (include "gha-base-name" .) }} {{- $name := default (include "gha-base-name" .) }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} {{- printf "%s-%s" (include "gha-runner-scale-set.scale-set-name" .) $name | trunc 63 | trimSuffix "-" }}
{{- end }} {{- end }}
{{/* {{/*
@@ -38,7 +42,7 @@ app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }} {{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
app.kubernetes.io/part-of: gha-rs app.kubernetes.io/part-of: gha-rs
actions.github.com/scale-set-name: {{ .Release.Name }} actions.github.com/scale-set-name: {{ include "gha-runner-scale-set.scale-set-name" . }}
actions.github.com/scale-set-namespace: {{ .Release.Namespace }} actions.github.com/scale-set-namespace: {{ .Release.Namespace }}
{{- end }} {{- end }}
@@ -46,8 +50,8 @@ actions.github.com/scale-set-namespace: {{ .Release.Namespace }}
Selector labels Selector labels
*/}} */}}
{{- define "gha-runner-scale-set.selectorLabels" -}} {{- define "gha-runner-scale-set.selectorLabels" -}}
app.kubernetes.io/name: {{ include "gha-runner-scale-set.name" . }} app.kubernetes.io/name: {{ include "gha-runner-scale-set.scale-set-name" . }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ include "gha-runner-scale-set.scale-set-name" . }}
{{- end }} {{- end }}
{{- define "gha-runner-scale-set.githubsecret" -}} {{- define "gha-runner-scale-set.githubsecret" -}}

View File

@@ -1,13 +1,13 @@
apiVersion: actions.github.com/v1alpha1 apiVersion: actions.github.com/v1alpha1
kind: AutoscalingRunnerSet kind: AutoscalingRunnerSet
metadata: metadata:
{{- if or (not .Release.Name) (gt (len .Release.Name) 45) }} {{- if or (not (include "gha-runner-scale-set.scale-set-name" .)) (gt (len (include "gha-runner-scale-set.scale-set-name" .)) 45) }}
{{ fail "Name must have up to 45 characters" }} {{ fail "Name must have up to 45 characters" }}
{{- end }} {{- end }}
{{- if gt (len .Release.Namespace) 63 }} {{- if gt (len .Release.Namespace) 63 }}
{{ fail "Namespace must have up to 63 characters" }} {{ fail "Namespace must have up to 63 characters" }}
{{- end }} {{- end }}
name: {{ .Values.runnerScaleSetName | default .Release.Name }} name: {{ include "gha-runner-scale-set.scale-set-name" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/component: "autoscaling-runner-set" app.kubernetes.io/component: "autoscaling-runner-set"

View File

@@ -5,6 +5,12 @@ kind: ServiceAccount
metadata: metadata:
name: {{ include "gha-runner-scale-set.kubeModeServiceAccountName" . }} name: {{ include "gha-runner-scale-set.kubeModeServiceAccountName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- if .Values.containerMode.kubernetesModeServiceAccount }}
{{- with .Values.containerMode.kubernetesModeServiceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}
finalizers: finalizers:
- actions.github.com/cleanup-protection - actions.github.com/cleanup-protection
labels: labels:

View File

@@ -330,7 +330,7 @@ func TestTemplateRenderedAutoScalingRunnerSet(t *testing.T) {
assert.Equal(t, namespaceName, ars.Namespace) assert.Equal(t, namespaceName, ars.Namespace)
assert.Equal(t, "test-runners", ars.Name) assert.Equal(t, "test-runners", ars.Name)
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/name"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/name"])
assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"])
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/part-of"]) assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/part-of"])
assert.Equal(t, "autoscaling-runner-set", ars.Labels["app.kubernetes.io/component"]) assert.Equal(t, "autoscaling-runner-set", ars.Labels["app.kubernetes.io/component"])
@@ -361,6 +361,7 @@ func TestTemplateRenderedAutoScalingRunnerSet_RunnerScaleSetName(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
releaseName := "test-runners" releaseName := "test-runners"
nameOverride := "test-runner-scale-set-name"
namespaceName := "test-" + strings.ToLower(random.UniqueId()) namespaceName := "test-" + strings.ToLower(random.UniqueId())
options := &helm.Options{ options := &helm.Options{
@@ -368,7 +369,7 @@ func TestTemplateRenderedAutoScalingRunnerSet_RunnerScaleSetName(t *testing.T) {
SetValues: map[string]string{ SetValues: map[string]string{
"githubConfigUrl": "https://github.com/actions", "githubConfigUrl": "https://github.com/actions",
"githubConfigSecret.github_token": "gh_token12345", "githubConfigSecret.github_token": "gh_token12345",
"runnerScaleSetName": "test-runner-scale-set-name", "runnerScaleSetName": nameOverride,
"controllerServiceAccount.name": "arc", "controllerServiceAccount.name": "arc",
"controllerServiceAccount.namespace": "arc-system", "controllerServiceAccount.namespace": "arc-system",
}, },
@@ -381,12 +382,15 @@ func TestTemplateRenderedAutoScalingRunnerSet_RunnerScaleSetName(t *testing.T) {
helm.UnmarshalK8SYaml(t, output, &ars) helm.UnmarshalK8SYaml(t, output, &ars)
assert.Equal(t, namespaceName, ars.Namespace) assert.Equal(t, namespaceName, ars.Namespace)
assert.Equal(t, "test-runner-scale-set-name", ars.Name) assert.Equal(t, nameOverride, ars.Name)
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/name"]) assert.Equal(t, nameOverride, ars.Labels["app.kubernetes.io/name"])
assert.Equal(t, releaseName, ars.Labels["app.kubernetes.io/instance"]) assert.Equal(t, nameOverride, ars.Labels["app.kubernetes.io/instance"])
assert.Equal(t, nameOverride, ars.Labels["actions.github.com/scale-set-name"])
assert.Equal(t, namespaceName, ars.Labels["actions.github.com/scale-set-namespace"])
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/part-of"])
assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl) assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl)
assert.Equal(t, "test-runners-gha-rs-github-secret", ars.Spec.GitHubConfigSecret) assert.Equal(t, nameOverride+"-gha-rs-github-secret", ars.Spec.GitHubConfigSecret)
assert.Equal(t, "test-runner-scale-set-name", ars.Spec.RunnerScaleSetName) assert.Equal(t, "test-runner-scale-set-name", ars.Spec.RunnerScaleSetName)
assert.Empty(t, ars.Spec.RunnerGroup, "RunnerGroup should be empty") assert.Empty(t, ars.Spec.RunnerGroup, "RunnerGroup should be empty")
@@ -738,6 +742,37 @@ func TestTemplateRenderedAutoScalingRunnerSet_DinD_ExtraInitContainers(t *testin
assert.Equal(t, "ls", ars.Spec.Template.Spec.InitContainers[2].Command[0], "InitContainers[2] Command[0] should be ls") assert.Equal(t, "ls", ars.Spec.Template.Spec.InitContainers[2].Command[0], "InitContainers[2] Command[0] should be ls")
} }
func TestTemplateRenderedKubernetesModeServiceAccountAnnotations(t *testing.T) {
t.Parallel()
// Path to the helm chart we will test
helmChartPath, err := filepath.Abs("../../gha-runner-scale-set")
require.NoError(t, err)
testValuesPath, err := filepath.Abs("../tests/values_kubernetes_mode_service_account_annotations.yaml")
require.NoError(t, err)
releaseName := "test-runners"
namespaceName := "test-" + strings.ToLower(random.UniqueId())
options := &helm.Options{
Logger: logger.Discard,
SetValues: map[string]string{
"controllerServiceAccount.name": "arc",
"controllerServiceAccount.namespace": "arc-system",
},
ValuesFiles: []string{testValuesPath},
KubectlOptions: k8s.NewKubectlOptions("", "", namespaceName),
}
output := helm.RenderTemplate(t, options, helmChartPath, releaseName, []string{"templates/kube_mode_serviceaccount.yaml"})
var sa corev1.ServiceAccount
helm.UnmarshalK8SYaml(t, output, &sa)
assert.Equal(t, "arn:aws:iam::123456789012:role/sample-role", sa.Annotations["eks.amazonaws.com/role-arn"], "Annotations should be arn:aws:iam::123456789012:role/sample-role")
}
func TestTemplateRenderedAutoScalingRunnerSet_DinD_ExtraVolumes(t *testing.T) { func TestTemplateRenderedAutoScalingRunnerSet_DinD_ExtraVolumes(t *testing.T) {
t.Parallel() t.Parallel()
@@ -840,7 +875,7 @@ func TestTemplateRenderedAutoScalingRunnerSet_EnableDinD(t *testing.T) {
assert.Equal(t, namespaceName, ars.Namespace) assert.Equal(t, namespaceName, ars.Namespace)
assert.Equal(t, "test-runners", ars.Name) assert.Equal(t, "test-runners", ars.Name)
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/name"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/name"])
assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"])
assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl) assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl)
assert.Equal(t, "test-runners-gha-rs-github-secret", ars.Spec.GitHubConfigSecret) assert.Equal(t, "test-runners-gha-rs-github-secret", ars.Spec.GitHubConfigSecret)
@@ -928,7 +963,7 @@ func TestTemplateRenderedAutoScalingRunnerSet_EnableKubernetesMode(t *testing.T)
assert.Equal(t, namespaceName, ars.Namespace) assert.Equal(t, namespaceName, ars.Namespace)
assert.Equal(t, "test-runners", ars.Name) assert.Equal(t, "test-runners", ars.Name)
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/name"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/name"])
assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"])
assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl) assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl)
assert.Equal(t, "test-runners-gha-rs-github-secret", ars.Spec.GitHubConfigSecret) assert.Equal(t, "test-runners-gha-rs-github-secret", ars.Spec.GitHubConfigSecret)
@@ -1029,7 +1064,7 @@ func TestTemplateRenderedAutoScalingRunnerSet_UsePredefinedSecret(t *testing.T)
assert.Equal(t, namespaceName, ars.Namespace) assert.Equal(t, namespaceName, ars.Namespace)
assert.Equal(t, "test-runners", ars.Name) assert.Equal(t, "test-runners", ars.Name)
assert.Equal(t, "gha-rs", ars.Labels["app.kubernetes.io/name"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/name"])
assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"]) assert.Equal(t, "test-runners", ars.Labels["app.kubernetes.io/instance"])
assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl) assert.Equal(t, "https://github.com/actions", ars.Spec.GitHubConfigUrl)
assert.Equal(t, "pre-defined-secrets", ars.Spec.GitHubConfigSecret) assert.Equal(t, "pre-defined-secrets", ars.Spec.GitHubConfigSecret)

View File

@@ -0,0 +1,8 @@
githubConfigUrl: https://github.com/actions/actions-runner-controller
githubConfigSecret:
github_token: test
containerMode:
type: kubernetes
kubernetesModeServiceAccount:
annotations:
eks.amazonaws.com/role-arn: arn:aws:iam::123456789012:role/sample-role

View File

@@ -84,6 +84,8 @@ githubConfigSecret:
# resources: # resources:
# requests: # requests:
# storage: 1Gi # storage: 1Gi
# kubernetesModeServiceAccount:
# annotations:
## template is the PodSpec for each listener Pod ## template is the PodSpec for each listener Pod
## For reference: https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#PodSpec ## For reference: https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-v1/#PodSpec

View File

@@ -8,6 +8,7 @@ import (
"math" "math"
"strings" "strings"
"github.com/actions/actions-runner-controller/cmd/githubrunnerscalesetlistener/config"
"github.com/actions/actions-runner-controller/github/actions" "github.com/actions/actions-runner-controller/github/actions"
"github.com/go-logr/logr" "github.com/go-logr/logr"
) )
@@ -30,7 +31,7 @@ type Service struct {
errs []error errs []error
} }
func WithPrometheusMetrics(conf RunnerScaleSetListenerConfig) func(*Service) { func WithPrometheusMetrics(conf config.Config) func(*Service) {
return func(svc *Service) { return func(svc *Service) {
parsedURL, err := actions.ParseGitHubConfigFromURL(conf.ConfigureUrl) parsedURL, err := actions.ParseGitHubConfigFromURL(conf.ConfigureUrl)
if err != nil { if err != nil {

View File

@@ -0,0 +1,76 @@
package config
import (
"encoding/json"
"fmt"
"os"
)
type Config struct {
ConfigureUrl string `json:"configureUrl"`
AppID int64 `json:"appID"`
AppInstallationID int64 `json:"appInstallationID"`
AppPrivateKey string `json:"appPrivateKey"`
Token string `json:"token"`
EphemeralRunnerSetNamespace string `json:"ephemeralRunnerSetNamespace"`
EphemeralRunnerSetName string `json:"ephemeralRunnerSetName"`
MaxRunners int `json:"maxRunners"`
MinRunners int `json:"minRunners"`
RunnerScaleSetId int `json:"runnerScaleSetId"`
RunnerScaleSetName string `json:"runnerScaleSetName"`
ServerRootCA string `json:"serverRootCA"`
LogLevel string `json:"logLevel"`
LogFormat string `json:"logFormat"`
MetricsAddr string `json:"metricsAddr"`
MetricsEndpoint string `json:"metricsEndpoint"`
}
func Read(path string) (Config, error) {
f, err := os.Open(path)
if err != nil {
return Config{}, err
}
defer f.Close()
var config Config
if err := json.NewDecoder(f).Decode(&config); err != nil {
return Config{}, fmt.Errorf("failed to decode config: %w", err)
}
if err := config.validate(); err != nil {
return Config{}, fmt.Errorf("failed to validate config: %w", err)
}
return config, nil
}
func (c *Config) validate() error {
if len(c.ConfigureUrl) == 0 {
return fmt.Errorf("GitHubConfigUrl is not provided")
}
if len(c.EphemeralRunnerSetNamespace) == 0 || len(c.EphemeralRunnerSetName) == 0 {
return fmt.Errorf("EphemeralRunnerSetNamespace '%s' or EphemeralRunnerSetName '%s' is missing", c.EphemeralRunnerSetNamespace, c.EphemeralRunnerSetName)
}
if c.RunnerScaleSetId == 0 {
return fmt.Errorf("RunnerScaleSetId '%d' is missing", c.RunnerScaleSetId)
}
if c.MaxRunners < c.MinRunners {
return fmt.Errorf("MinRunners '%d' cannot be greater than MaxRunners '%d'", c.MinRunners, c.MaxRunners)
}
hasToken := len(c.Token) > 0
hasPrivateKeyConfig := c.AppID > 0 && c.AppPrivateKey != ""
if !hasToken && !hasPrivateKeyConfig {
return fmt.Errorf("GitHub auth credential is missing, token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(c.Token), c.AppID, c.AppInstallationID, len(c.AppPrivateKey))
}
if hasToken && hasPrivateKeyConfig {
return fmt.Errorf("only one GitHub auth method supported at a time. Have both PAT and App auth: token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(c.Token), c.AppID, c.AppInstallationID, len(c.AppPrivateKey))
}
return nil
}

View File

@@ -0,0 +1,92 @@
package config
import (
"fmt"
"testing"
"github.com/stretchr/testify/assert"
)
func TestConfigValidationMinMax(t *testing.T) {
config := &Config{
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
MinRunners: 5,
MaxRunners: 2,
Token: "token",
}
err := config.validate()
assert.ErrorContains(t, err, "MinRunners '5' cannot be greater than MaxRunners '2", "Expected error about MinRunners > MaxRunners")
}
func TestConfigValidationMissingToken(t *testing.T) {
config := &Config{
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := config.validate()
expectedError := fmt.Sprintf("GitHub auth credential is missing, token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
assert.ErrorContains(t, err, expectedError, "Expected error about missing auth")
}
func TestConfigValidationAppKey(t *testing.T) {
config := &Config{
AppID: 1,
AppInstallationID: 10,
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := config.validate()
expectedError := fmt.Sprintf("GitHub auth credential is missing, token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
assert.ErrorContains(t, err, expectedError, "Expected error about missing auth")
}
func TestConfigValidationOnlyOneTypeOfCredentials(t *testing.T) {
config := &Config{
AppID: 1,
AppInstallationID: 10,
AppPrivateKey: "asdf",
Token: "asdf",
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := config.validate()
expectedError := fmt.Sprintf("only one GitHub auth method supported at a time. Have both PAT and App auth: token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
assert.ErrorContains(t, err, expectedError, "Expected error about missing auth")
}
func TestConfigValidation(t *testing.T) {
config := &Config{
ConfigureUrl: "https://github.com/actions",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
MinRunners: 1,
MaxRunners: 5,
Token: "asdf",
}
err := config.validate()
assert.NoError(t, err, "Expected no error")
}
func TestConfigValidationConfigUrl(t *testing.T) {
config := &Config{
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := config.validate()
assert.ErrorContains(t, err, "GitHubConfigUrl is not provided", "Expected error about missing ConfigureUrl")
}

View File

@@ -28,39 +28,26 @@ import (
"time" "time"
"github.com/actions/actions-runner-controller/build" "github.com/actions/actions-runner-controller/build"
"github.com/actions/actions-runner-controller/cmd/githubrunnerscalesetlistener/config"
"github.com/actions/actions-runner-controller/github/actions" "github.com/actions/actions-runner-controller/github/actions"
"github.com/actions/actions-runner-controller/logging" "github.com/actions/actions-runner-controller/logging"
"github.com/go-logr/logr" "github.com/go-logr/logr"
"github.com/kelseyhightower/envconfig"
"github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/promhttp" "github.com/prometheus/client_golang/prometheus/promhttp"
"golang.org/x/net/http/httpproxy" "golang.org/x/net/http/httpproxy"
"golang.org/x/sync/errgroup" "golang.org/x/sync/errgroup"
) )
type RunnerScaleSetListenerConfig struct { func main() {
ConfigureUrl string `split_words:"true"` configPath, ok := os.LookupEnv("LISTENER_CONFIG_PATH")
AppID int64 `split_words:"true"` if !ok {
AppInstallationID int64 `split_words:"true"` fmt.Fprintf(os.Stderr, "Error: LISTENER_CONFIG_PATH environment variable is not set\n")
AppPrivateKey string `split_words:"true"` os.Exit(1)
Token string `split_words:"true"`
EphemeralRunnerSetNamespace string `split_words:"true"`
EphemeralRunnerSetName string `split_words:"true"`
MaxRunners int `split_words:"true"`
MinRunners int `split_words:"true"`
RunnerScaleSetId int `split_words:"true"`
RunnerScaleSetName string `split_words:"true"`
ServerRootCA string `split_words:"true"`
LogLevel string `split_words:"true"`
LogFormat string `split_words:"true"`
MetricsAddr string `split_words:"true"`
MetricsEndpoint string `split_words:"true"`
} }
func main() { rc, err := config.Read(configPath)
var rc RunnerScaleSetListenerConfig if err != nil {
if err := envconfig.Process("github", &rc); err != nil { fmt.Fprintf(os.Stderr, "Error: reading config from path(%q): %v\n", configPath, err)
fmt.Fprintf(os.Stderr, "Error: processing environment variables for RunnerScaleSetListenerConfig: %v\n", err)
os.Exit(1) os.Exit(1)
} }
@@ -80,12 +67,6 @@ func main() {
os.Exit(1) os.Exit(1)
} }
// Validate all inputs
if err := validateConfig(&rc); err != nil {
logger.Error(err, "Inputs validation failed")
os.Exit(1)
}
ctx, stop := signal.NotifyContext(context.Background(), syscall.SIGINT, syscall.SIGTERM) ctx, stop := signal.NotifyContext(context.Background(), syscall.SIGINT, syscall.SIGTERM)
defer stop() defer stop()
@@ -123,7 +104,7 @@ func main() {
} }
type metricsServer struct { type metricsServer struct {
rc RunnerScaleSetListenerConfig rc config.Config
logger logr.Logger logger logr.Logger
srv *http.Server srv *http.Server
} }
@@ -173,7 +154,7 @@ type runOptions struct {
serviceOptions []func(*Service) serviceOptions []func(*Service)
} }
func run(ctx context.Context, rc RunnerScaleSetListenerConfig, logger logr.Logger, opts runOptions) error { func run(ctx context.Context, rc config.Config, logger logr.Logger, opts runOptions) error {
// Create root context and hook with sigint and sigterm // Create root context and hook with sigint and sigterm
creds := &actions.ActionsAuth{} creds := &actions.ActionsAuth{}
if rc.Token != "" { if rc.Token != "" {
@@ -232,38 +213,7 @@ func run(ctx context.Context, rc RunnerScaleSetListenerConfig, logger logr.Logge
return nil return nil
} }
func validateConfig(config *RunnerScaleSetListenerConfig) error { func newActionsClientFromConfig(config config.Config, creds *actions.ActionsAuth, options ...actions.ClientOption) (*actions.Client, error) {
if len(config.ConfigureUrl) == 0 {
return fmt.Errorf("GitHubConfigUrl is not provided")
}
if len(config.EphemeralRunnerSetNamespace) == 0 || len(config.EphemeralRunnerSetName) == 0 {
return fmt.Errorf("EphemeralRunnerSetNamespace '%s' or EphemeralRunnerSetName '%s' is missing", config.EphemeralRunnerSetNamespace, config.EphemeralRunnerSetName)
}
if config.RunnerScaleSetId == 0 {
return fmt.Errorf("RunnerScaleSetId '%d' is missing", config.RunnerScaleSetId)
}
if config.MaxRunners < config.MinRunners {
return fmt.Errorf("MinRunners '%d' cannot be greater than MaxRunners '%d'", config.MinRunners, config.MaxRunners)
}
hasToken := len(config.Token) > 0
hasPrivateKeyConfig := config.AppID > 0 && config.AppPrivateKey != ""
if !hasToken && !hasPrivateKeyConfig {
return fmt.Errorf("GitHub auth credential is missing, token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
}
if hasToken && hasPrivateKeyConfig {
return fmt.Errorf("only one GitHub auth method supported at a time. Have both PAT and App auth: token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
}
return nil
}
func newActionsClientFromConfig(config RunnerScaleSetListenerConfig, creds *actions.ActionsAuth, options ...actions.ClientOption) (*actions.Client, error) {
if config.ServerRootCA != "" { if config.ServerRootCA != "" {
systemPool, err := x509.SystemCertPool() systemPool, err := x509.SystemCertPool()
if err != nil { if err != nil {

View File

@@ -3,7 +3,6 @@ package main
import ( import (
"context" "context"
"crypto/tls" "crypto/tls"
"fmt"
"net/http" "net/http"
"net/http/httptest" "net/http/httptest"
"os" "os"
@@ -13,94 +12,11 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"github.com/actions/actions-runner-controller/cmd/githubrunnerscalesetlistener/config"
"github.com/actions/actions-runner-controller/github/actions" "github.com/actions/actions-runner-controller/github/actions"
"github.com/actions/actions-runner-controller/github/actions/testserver" "github.com/actions/actions-runner-controller/github/actions/testserver"
) )
func TestConfigValidationMinMax(t *testing.T) {
config := &RunnerScaleSetListenerConfig{
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
MinRunners: 5,
MaxRunners: 2,
Token: "token",
}
err := validateConfig(config)
assert.ErrorContains(t, err, "MinRunners '5' cannot be greater than MaxRunners '2", "Expected error about MinRunners > MaxRunners")
}
func TestConfigValidationMissingToken(t *testing.T) {
config := &RunnerScaleSetListenerConfig{
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := validateConfig(config)
expectedError := fmt.Sprintf("GitHub auth credential is missing, token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
assert.ErrorContains(t, err, expectedError, "Expected error about missing auth")
}
func TestConfigValidationAppKey(t *testing.T) {
config := &RunnerScaleSetListenerConfig{
AppID: 1,
AppInstallationID: 10,
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := validateConfig(config)
expectedError := fmt.Sprintf("GitHub auth credential is missing, token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
assert.ErrorContains(t, err, expectedError, "Expected error about missing auth")
}
func TestConfigValidationOnlyOneTypeOfCredentials(t *testing.T) {
config := &RunnerScaleSetListenerConfig{
AppID: 1,
AppInstallationID: 10,
AppPrivateKey: "asdf",
Token: "asdf",
ConfigureUrl: "github.com/some_org/some_repo",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := validateConfig(config)
expectedError := fmt.Sprintf("only one GitHub auth method supported at a time. Have both PAT and App auth: token length: '%d', appId: '%d', installationId: '%d', private key length: '%d", len(config.Token), config.AppID, config.AppInstallationID, len(config.AppPrivateKey))
assert.ErrorContains(t, err, expectedError, "Expected error about missing auth")
}
func TestConfigValidation(t *testing.T) {
config := &RunnerScaleSetListenerConfig{
ConfigureUrl: "https://github.com/actions",
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
MinRunners: 1,
MaxRunners: 5,
Token: "asdf",
}
err := validateConfig(config)
assert.NoError(t, err, "Expected no error")
}
func TestConfigValidationConfigUrl(t *testing.T) {
config := &RunnerScaleSetListenerConfig{
EphemeralRunnerSetNamespace: "namespace",
EphemeralRunnerSetName: "deployment",
RunnerScaleSetId: 1,
}
err := validateConfig(config)
assert.ErrorContains(t, err, "GitHubConfigUrl is not provided", "Expected error about missing ConfigureUrl")
}
func TestCustomerServerRootCA(t *testing.T) { func TestCustomerServerRootCA(t *testing.T) {
ctx := context.Background() ctx := context.Background()
certsFolder := filepath.Join( certsFolder := filepath.Join(
@@ -134,7 +50,7 @@ func TestCustomerServerRootCA(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
certsString = certsString + string(intermediate) certsString = certsString + string(intermediate)
config := RunnerScaleSetListenerConfig{ config := config.Config{
ConfigureUrl: server.ConfigURLForOrg("myorg"), ConfigureUrl: server.ConfigURLForOrg("myorg"),
ServerRootCA: certsString, ServerRootCA: certsString,
} }
@@ -164,7 +80,7 @@ func TestProxySettings(t *testing.T) {
os.Setenv("http_proxy", proxy.URL) os.Setenv("http_proxy", proxy.URL)
defer os.Setenv("http_proxy", prevProxy) defer os.Setenv("http_proxy", prevProxy)
config := RunnerScaleSetListenerConfig{ config := config.Config{
ConfigureUrl: "https://github.com/org/repo", ConfigureUrl: "https://github.com/org/repo",
} }
creds := &actions.ActionsAuth{ creds := &actions.ActionsAuth{
@@ -196,7 +112,7 @@ func TestProxySettings(t *testing.T) {
os.Setenv("https_proxy", proxy.URL) os.Setenv("https_proxy", proxy.URL)
defer os.Setenv("https_proxy", prevProxy) defer os.Setenv("https_proxy", prevProxy)
config := RunnerScaleSetListenerConfig{ config := config.Config{
ConfigureUrl: "https://github.com/org/repo", ConfigureUrl: "https://github.com/org/repo",
} }
creds := &actions.ActionsAuth{ creds := &actions.ActionsAuth{
@@ -233,7 +149,7 @@ func TestProxySettings(t *testing.T) {
os.Setenv("no_proxy", "example.com") os.Setenv("no_proxy", "example.com")
defer os.Setenv("no_proxy", prevNoProxy) defer os.Setenv("no_proxy", prevNoProxy)
config := RunnerScaleSetListenerConfig{ config := config.Config{
ConfigureUrl: "https://github.com/org/repo", ConfigureUrl: "https://github.com/org/repo",
} }
creds := &actions.ActionsAuth{ creds := &actions.ActionsAuth{

View File

@@ -1,8 +1,6 @@
package main package main
import ( import (
"strconv"
"github.com/actions/actions-runner-controller/github/actions" "github.com/actions/actions-runner-controller/github/actions"
"github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus"
) )
@@ -18,8 +16,6 @@ const (
labelKeyJobWorkflowRef = "job_workflow_ref" labelKeyJobWorkflowRef = "job_workflow_ref"
labelKeyEventName = "event_name" labelKeyEventName = "event_name"
labelKeyJobResult = "job_result" labelKeyJobResult = "job_result"
labelKeyRunnerID = "runner_id"
labelKeyRunnerName = "runner_name"
) )
const githubScaleSetSubsystem = "gha" const githubScaleSetSubsystem = "gha"
@@ -43,10 +39,15 @@ var (
labelKeyEventName, labelKeyEventName,
} }
completedJobsTotalLabels = append(jobLabels, labelKeyJobResult, labelKeyRunnerID, labelKeyRunnerName) completedJobsTotalLabels = append(jobLabels, labelKeyJobResult)
jobExecutionDurationLabels = append(jobLabels, labelKeyJobResult, labelKeyRunnerID, labelKeyRunnerName) jobExecutionDurationLabels = append(jobLabels, labelKeyJobResult)
startedJobsTotalLabels = append(jobLabels, labelKeyRunnerID, labelKeyRunnerName) startedJobsTotalLabels = jobLabels
jobStartupDurationLabels = append(jobLabels, labelKeyRunnerID, labelKeyRunnerName) jobStartupDurationLabels = []string{
labelKeyRepository,
labelKeyOrganization,
labelKeyEnterprise,
labelKeyEventName,
}
) )
// metrics // metrics
@@ -274,19 +275,24 @@ func (b *baseLabels) scaleSetLabels() prometheus.Labels {
func (b *baseLabels) completedJobLabels(msg *actions.JobCompleted) prometheus.Labels { func (b *baseLabels) completedJobLabels(msg *actions.JobCompleted) prometheus.Labels {
l := b.jobLabels(&msg.JobMessageBase) l := b.jobLabels(&msg.JobMessageBase)
l[labelKeyRunnerID] = strconv.Itoa(msg.RunnerId)
l[labelKeyJobResult] = msg.Result l[labelKeyJobResult] = msg.Result
l[labelKeyRunnerName] = msg.RunnerName
return l return l
} }
func (b *baseLabels) startedJobLabels(msg *actions.JobStarted) prometheus.Labels { func (b *baseLabels) startedJobLabels(msg *actions.JobStarted) prometheus.Labels {
l := b.jobLabels(&msg.JobMessageBase) l := b.jobLabels(&msg.JobMessageBase)
l[labelKeyRunnerID] = strconv.Itoa(msg.RunnerId)
l[labelKeyRunnerName] = msg.RunnerName
return l return l
} }
func (b *baseLabels) jobStartupDurationLabels(msg *actions.JobStarted) prometheus.Labels {
return prometheus.Labels{
labelKeyEnterprise: b.enterprise,
labelKeyOrganization: b.organization,
labelKeyRepository: b.repository,
labelKeyEventName: msg.EventName,
}
}
func (m *metricsExporter) withBaseLabels(base baseLabels) { func (m *metricsExporter) withBaseLabels(base baseLabels) {
m.baseLabels = base m.baseLabels = base
} }
@@ -307,6 +313,7 @@ func (m *metricsExporter) publishJobStarted(msg *actions.JobStarted) {
l := m.startedJobLabels(msg) l := m.startedJobLabels(msg)
startedJobsTotal.With(l).Inc() startedJobsTotal.With(l).Inc()
l = m.jobStartupDurationLabels(msg)
startupDuration := msg.JobMessageBase.RunnerAssignTime.Unix() - msg.JobMessageBase.ScaleSetAssignTime.Unix() startupDuration := msg.JobMessageBase.RunnerAssignTime.Unix() - msg.JobMessageBase.ScaleSetAssignTime.Unix()
jobStartupDurationSeconds.With(l).Observe(float64(startupDuration)) jobStartupDurationSeconds.With(l).Observe(float64(startupDuration))
} }

View File

@@ -796,7 +796,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -861,7 +861,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -944,7 +944,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1080,7 +1080,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1145,7 +1145,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1306,7 +1306,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1629,7 +1629,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1694,7 +1694,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1777,7 +1777,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1913,7 +1913,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1978,7 +1978,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2139,7 +2139,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2474,7 +2474,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2539,7 +2539,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2622,7 +2622,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2758,7 +2758,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2823,7 +2823,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2984,7 +2984,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3738,7 +3738,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -754,7 +754,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -819,7 +819,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -902,7 +902,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1038,7 +1038,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1103,7 +1103,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1264,7 +1264,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1587,7 +1587,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1652,7 +1652,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1735,7 +1735,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1871,7 +1871,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1936,7 +1936,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2097,7 +2097,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2432,7 +2432,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2497,7 +2497,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2580,7 +2580,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2716,7 +2716,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2781,7 +2781,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2942,7 +2942,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3696,7 +3696,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5043,7 +5043,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5108,7 +5108,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5191,7 +5191,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5327,7 +5327,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5392,7 +5392,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5550,7 +5550,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5873,7 +5873,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -5938,7 +5938,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6021,7 +6021,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6157,7 +6157,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6222,7 +6222,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -6380,7 +6380,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6715,7 +6715,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6780,7 +6780,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6863,7 +6863,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -6999,7 +6999,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -7064,7 +7064,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -7222,7 +7222,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -7976,7 +7976,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -779,7 +779,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -844,7 +844,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -927,7 +927,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1063,7 +1063,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1128,7 +1128,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1286,7 +1286,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1609,7 +1609,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1674,7 +1674,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1757,7 +1757,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1893,7 +1893,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1958,7 +1958,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2116,7 +2116,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2451,7 +2451,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2516,7 +2516,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2599,7 +2599,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2735,7 +2735,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2800,7 +2800,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2958,7 +2958,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3712,7 +3712,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -773,7 +773,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -838,7 +838,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -921,7 +921,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1057,7 +1057,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1122,7 +1122,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1280,7 +1280,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1603,7 +1603,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1668,7 +1668,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1751,7 +1751,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1887,7 +1887,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1952,7 +1952,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2110,7 +2110,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2445,7 +2445,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2510,7 +2510,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2593,7 +2593,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2729,7 +2729,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2794,7 +2794,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2952,7 +2952,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3706,7 +3706,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -767,7 +767,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -832,7 +832,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -915,7 +915,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1051,7 +1051,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1116,7 +1116,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1274,7 +1274,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1557,7 +1557,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1873,7 +1873,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1938,7 +1938,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2021,7 +2021,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2157,7 +2157,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2222,7 +2222,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2380,7 +2380,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2714,7 +2714,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2779,7 +2779,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2862,7 +2862,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2998,7 +2998,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3063,7 +3063,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3221,7 +3221,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3368,7 +3368,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3654,7 +3654,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3719,7 +3719,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3802,7 +3802,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3938,7 +3938,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4003,7 +4003,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4161,7 +4161,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4741,7 +4741,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5391,7 +5391,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -749,7 +749,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -814,7 +814,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -897,7 +897,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1033,7 +1033,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1098,7 +1098,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1256,7 +1256,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1539,7 +1539,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1855,7 +1855,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1920,7 +1920,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2003,7 +2003,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2139,7 +2139,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2204,7 +2204,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2362,7 +2362,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2696,7 +2696,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2761,7 +2761,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2844,7 +2844,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2980,7 +2980,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3045,7 +3045,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3203,7 +3203,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3350,7 +3350,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3636,7 +3636,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3701,7 +3701,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3784,7 +3784,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3920,7 +3920,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3985,7 +3985,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4143,7 +4143,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4723,7 +4723,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5373,7 +5373,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -701,7 +701,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -766,7 +766,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -849,7 +849,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -985,7 +985,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1050,7 +1050,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1208,7 +1208,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1491,7 +1491,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1807,7 +1807,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1872,7 +1872,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1955,7 +1955,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2091,7 +2091,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2156,7 +2156,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2314,7 +2314,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2648,7 +2648,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2713,7 +2713,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2796,7 +2796,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2932,7 +2932,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2997,7 +2997,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3155,7 +3155,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3302,7 +3302,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3588,7 +3588,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3653,7 +3653,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3736,7 +3736,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3872,7 +3872,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3937,7 +3937,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4095,7 +4095,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -4675,7 +4675,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -5325,7 +5325,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -836,7 +836,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -901,7 +901,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -984,7 +984,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1120,7 +1120,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1185,7 +1185,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -1343,7 +1343,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1666,7 +1666,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1731,7 +1731,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1814,7 +1814,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -1950,7 +1950,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2015,7 +2015,7 @@ spec:
description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod. description: Resources are not allowed for ephemeral containers. Ephemeral containers use spare resources already allocated to the pod.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -2173,7 +2173,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2508,7 +2508,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2573,7 +2573,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2656,7 +2656,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2792,7 +2792,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -2857,7 +2857,7 @@ spec:
description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' description: 'Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -3015,7 +3015,7 @@ spec:
description: HTTPHeader describes a custom header to be used in HTTP probes description: HTTPHeader describes a custom header to be used in HTTP probes
properties: properties:
name: name:
description: The header field name description: The header field name. This will be canonicalized upon output, so case-variant names will be understood as the same header.
type: string type: string
value: value:
description: The header field value description: The header field value
@@ -3769,7 +3769,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4511,7 +4511,7 @@ spec:
description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' description: 'resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources'
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:
@@ -4666,7 +4666,7 @@ spec:
description: ResourceRequirements describes the compute resource requirements. description: ResourceRequirements describes the compute resource requirements.
properties: properties:
claims: claims:
description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable." description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field is immutable. It can only be set for containers."
items: items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims. description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties: properties:

View File

@@ -287,6 +287,21 @@ func (r *AutoscalingListenerReconciler) cleanupResources(ctx context.Context, au
} }
logger.Info("Listener pod is deleted") logger.Info("Listener pod is deleted")
var secret corev1.Secret
err = r.Get(ctx, types.NamespacedName{Namespace: autoscalingListener.Namespace, Name: scaleSetListenerConfigName(autoscalingListener)}, &secret)
switch {
case err == nil:
if secret.ObjectMeta.DeletionTimestamp.IsZero() {
logger.Info("Deleting the listener config secret")
if err := r.Delete(ctx, &secret); err != nil {
return false, fmt.Errorf("failed to delete listener config secret: %v", err)
}
}
return false, nil
case err != nil && !kerrors.IsNotFound(err):
return false, fmt.Errorf("failed to get listener config secret: %v", err)
}
if autoscalingListener.Spec.Proxy != nil { if autoscalingListener.Spec.Proxy != nil {
logger.Info("Cleaning up the listener proxy secret") logger.Info("Cleaning up the listener proxy secret")
proxySecret := new(corev1.Secret) proxySecret := new(corev1.Secret)
@@ -306,6 +321,38 @@ func (r *AutoscalingListenerReconciler) cleanupResources(ctx context.Context, au
logger.Info("Listener proxy secret is deleted") logger.Info("Listener proxy secret is deleted")
} }
listenerRoleBinding := new(rbacv1.RoleBinding)
err = r.Get(ctx, types.NamespacedName{Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, Name: scaleSetListenerRoleName(autoscalingListener)}, listenerRoleBinding)
switch {
case err == nil:
if listenerRoleBinding.ObjectMeta.DeletionTimestamp.IsZero() {
logger.Info("Deleting the listener role binding")
if err := r.Delete(ctx, listenerRoleBinding); err != nil {
return false, fmt.Errorf("failed to delete listener role binding: %v", err)
}
}
return false, nil
case err != nil && !kerrors.IsNotFound(err):
return false, fmt.Errorf("failed to get listener role binding: %v", err)
}
logger.Info("Listener role binding is deleted")
listenerRole := new(rbacv1.Role)
err = r.Get(ctx, types.NamespacedName{Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace, Name: scaleSetListenerRoleName(autoscalingListener)}, listenerRole)
switch {
case err == nil:
if listenerRole.ObjectMeta.DeletionTimestamp.IsZero() {
logger.Info("Deleting the listener role")
if err := r.Delete(ctx, listenerRole); err != nil {
return false, fmt.Errorf("failed to delete listener role: %v", err)
}
}
return false, nil
case err != nil && !kerrors.IsNotFound(err):
return false, fmt.Errorf("failed to get listener role: %v", err)
}
logger.Info("Listener role is deleted")
logger.Info("Cleaning up the listener service account") logger.Info("Cleaning up the listener service account")
listenerSa := new(corev1.ServiceAccount) listenerSa := new(corev1.ServiceAccount)
err = r.Get(ctx, types.NamespacedName{Name: scaleSetListenerServiceAccountName(autoscalingListener), Namespace: autoscalingListener.Namespace}, listenerSa) err = r.Get(ctx, types.NamespacedName{Name: scaleSetListenerServiceAccountName(autoscalingListener), Namespace: autoscalingListener.Namespace}, listenerSa)
@@ -386,13 +433,13 @@ func (r *AutoscalingListenerReconciler) createListenerPod(ctx context.Context, a
} }
} }
cert := ""
if autoscalingListener.Spec.GitHubServerTLS != nil { if autoscalingListener.Spec.GitHubServerTLS != nil {
env, err := r.certificateEnvVarForListener(ctx, autoscalingRunnerSet, autoscalingListener) var err error
cert, err = r.certificate(ctx, autoscalingRunnerSet, autoscalingListener)
if err != nil { if err != nil {
return ctrl.Result{}, fmt.Errorf("failed to create certificate env var for listener: %v", err) return ctrl.Result{}, fmt.Errorf("failed to create certificate env var for listener: %v", err)
} }
envs = append(envs, env)
} }
var metricsConfig *listenerMetricsServerConfig var metricsConfig *listenerMetricsServerConfig
@@ -403,7 +450,35 @@ func (r *AutoscalingListenerReconciler) createListenerPod(ctx context.Context, a
} }
} }
newPod, err := r.resourceBuilder.newScaleSetListenerPod(autoscalingListener, serviceAccount, secret, metricsConfig, envs...) var podConfig corev1.Secret
if err := r.Get(ctx, types.NamespacedName{Namespace: autoscalingListener.Namespace, Name: scaleSetListenerConfigName(autoscalingListener)}, &podConfig); err != nil {
if !kerrors.IsNotFound(err) {
logger.Error(err, "Unable to get listener config secret", "namespace", autoscalingListener.Namespace, "name", scaleSetListenerConfigName(autoscalingListener))
return ctrl.Result{Requeue: true}, err
}
logger.Info("Creating listener config secret")
podConfig, err := r.resourceBuilder.newScaleSetListenerConfig(autoscalingListener, secret, metricsConfig, cert)
if err != nil {
logger.Error(err, "Failed to build listener config secret")
return ctrl.Result{}, err
}
if err := ctrl.SetControllerReference(autoscalingListener, podConfig, r.Scheme); err != nil {
logger.Error(err, "Failed to set controller reference")
return ctrl.Result{}, err
}
if err := r.Create(ctx, podConfig); err != nil {
logger.Error(err, "Unable to create listener config secret", "namespace", podConfig.Namespace, "name", podConfig.Name)
return ctrl.Result{}, err
}
return ctrl.Result{Requeue: true}, nil
}
newPod, err := r.resourceBuilder.newScaleSetListenerPod(autoscalingListener, &podConfig, serviceAccount, secret, metricsConfig, envs...)
if err != nil { if err != nil {
logger.Error(err, "Failed to build listener pod") logger.Error(err, "Failed to build listener pod")
return ctrl.Result{}, err return ctrl.Result{}, err
@@ -424,13 +499,13 @@ func (r *AutoscalingListenerReconciler) createListenerPod(ctx context.Context, a
return ctrl.Result{}, nil return ctrl.Result{}, nil
} }
func (r *AutoscalingListenerReconciler) certificateEnvVarForListener(ctx context.Context, autoscalingRunnerSet *v1alpha1.AutoscalingRunnerSet, autoscalingListener *v1alpha1.AutoscalingListener) (corev1.EnvVar, error) { func (r *AutoscalingListenerReconciler) certificate(ctx context.Context, autoscalingRunnerSet *v1alpha1.AutoscalingRunnerSet, autoscalingListener *v1alpha1.AutoscalingListener) (string, error) {
if autoscalingListener.Spec.GitHubServerTLS.CertificateFrom == nil { if autoscalingListener.Spec.GitHubServerTLS.CertificateFrom == nil {
return corev1.EnvVar{}, fmt.Errorf("githubServerTLS.certificateFrom is not specified") return "", fmt.Errorf("githubServerTLS.certificateFrom is not specified")
} }
if autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef == nil { if autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef == nil {
return corev1.EnvVar{}, fmt.Errorf("githubServerTLS.certificateFrom.configMapKeyRef is not specified") return "", fmt.Errorf("githubServerTLS.certificateFrom.configMapKeyRef is not specified")
} }
var configmap corev1.ConfigMap var configmap corev1.ConfigMap
@@ -443,7 +518,7 @@ func (r *AutoscalingListenerReconciler) certificateEnvVarForListener(ctx context
&configmap, &configmap,
) )
if err != nil { if err != nil {
return corev1.EnvVar{}, fmt.Errorf( return "", fmt.Errorf(
"failed to get configmap %s: %w", "failed to get configmap %s: %w",
autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Name, autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Name,
err, err,
@@ -452,17 +527,14 @@ func (r *AutoscalingListenerReconciler) certificateEnvVarForListener(ctx context
certificate, ok := configmap.Data[autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Key] certificate, ok := configmap.Data[autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Key]
if !ok { if !ok {
return corev1.EnvVar{}, fmt.Errorf( return "", fmt.Errorf(
"key %s is not found in configmap %s", "key %s is not found in configmap %s",
autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Key, autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Key,
autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Name, autoscalingListener.Spec.GitHubServerTLS.CertificateFrom.ConfigMapKeyRef.Name,
) )
} }
return corev1.EnvVar{ return certificate, nil
Name: "GITHUB_SERVER_ROOT_CA",
Value: certificate,
}, nil
} }
func (r *AutoscalingListenerReconciler) createSecretsForListener(ctx context.Context, autoscalingListener *v1alpha1.AutoscalingListener, secret *corev1.Secret, logger logr.Logger) (ctrl.Result, error) { func (r *AutoscalingListenerReconciler) createSecretsForListener(ctx context.Context, autoscalingListener *v1alpha1.AutoscalingListener, secret *corev1.Secret, logger logr.Logger) (ctrl.Result, error) {

View File

@@ -2,6 +2,7 @@ package actionsgithubcom
import ( import (
"context" "context"
"encoding/json"
"fmt" "fmt"
"os" "os"
"path/filepath" "path/filepath"
@@ -13,6 +14,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/client"
logf "sigs.k8s.io/controller-runtime/pkg/log" logf "sigs.k8s.io/controller-runtime/pkg/log"
listenerconfig "github.com/actions/actions-runner-controller/cmd/githubrunnerscalesetlistener/config"
. "github.com/onsi/ginkgo/v2" . "github.com/onsi/ginkgo/v2"
. "github.com/onsi/gomega" . "github.com/onsi/gomega"
kerrors "k8s.io/apimachinery/pkg/api/errors" kerrors "k8s.io/apimachinery/pkg/api/errors"
@@ -103,6 +105,19 @@ var _ = Describe("Test AutoScalingListener controller", func() {
Context("When creating a new AutoScalingListener", func() { Context("When creating a new AutoScalingListener", func() {
It("It should create/add all required resources for a new AutoScalingListener (finalizer, secret, service account, role, rolebinding, pod)", func() { It("It should create/add all required resources for a new AutoScalingListener (finalizer, secret, service account, role, rolebinding, pod)", func() {
config := new(corev1.Secret)
Eventually(
func() error {
err := k8sClient.Get(ctx, client.ObjectKey{Name: scaleSetListenerConfigName(autoscalingListener), Namespace: configSecret.Namespace}, config)
if err != nil {
return err
}
return nil
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval,
).Should(Succeed(), "Config secret should be created")
// Check if finalizer is added // Check if finalizer is added
created := new(actionsv1alpha1.AutoscalingListener) created := new(actionsv1alpha1.AutoscalingListener)
Eventually( Eventually(
@@ -203,7 +218,8 @@ var _ = Describe("Test AutoScalingListener controller", func() {
return pod.Name, nil return pod.Name, nil
}, },
autoscalingListenerTestTimeout, autoscalingListenerTestTimeout,
autoscalingListenerTestInterval).Should(BeEquivalentTo(autoscalingListener.Name), "Pod should be created") autoscalingListenerTestInterval,
).Should(BeEquivalentTo(autoscalingListener.Name), "Pod should be created")
// Delete the AutoScalingListener // Delete the AutoScalingListener
err := k8sClient.Delete(ctx, autoscalingListener) err := k8sClient.Delete(ctx, autoscalingListener)
@@ -225,7 +241,41 @@ var _ = Describe("Test AutoScalingListener controller", func() {
return nil return nil
}, },
autoscalingListenerTestTimeout, autoscalingListenerTestTimeout,
autoscalingListenerTestInterval).ShouldNot(Succeed(), "failed to delete pod") autoscalingListenerTestInterval,
).ShouldNot(Succeed(), "failed to delete pod")
// Cleanup the listener role binding
Eventually(
func() bool {
roleBinding := new(rbacv1.RoleBinding)
err := k8sClient.Get(ctx, client.ObjectKey{Name: scaleSetListenerRoleName(autoscalingListener), Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace}, roleBinding)
return kerrors.IsNotFound(err)
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval,
).Should(BeTrue(), "failed to delete role binding")
// Cleanup the listener role
Eventually(
func() bool {
role := new(rbacv1.Role)
err := k8sClient.Get(ctx, client.ObjectKey{Name: scaleSetListenerRoleName(autoscalingListener), Namespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace}, role)
return kerrors.IsNotFound(err)
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval,
).Should(BeTrue(), "failed to delete role")
// Cleanup the listener config
Eventually(
func() bool {
config := new(corev1.Secret)
err := k8sClient.Get(ctx, client.ObjectKey{Name: scaleSetListenerConfigName(autoscalingListener), Namespace: autoscalingListener.Namespace}, config)
return kerrors.IsNotFound(err)
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval,
).Should(BeTrue(), "failed to delete config secret")
// Cleanup the listener service account // Cleanup the listener service account
Eventually( Eventually(
@@ -477,6 +527,17 @@ var _ = Describe("Test AutoScalingListener customization", func() {
autoscalingListenerTestTimeout, autoscalingListenerTestTimeout,
autoscalingListenerTestInterval).Should(BeEquivalentTo(autoscalingListenerFinalizerName), "AutoScalingListener should have a finalizer") autoscalingListenerTestInterval).Should(BeEquivalentTo(autoscalingListenerFinalizerName), "AutoScalingListener should have a finalizer")
// Check if config is created
config := new(corev1.Secret)
Eventually(
func() error {
err := k8sClient.Get(ctx, client.ObjectKey{Name: scaleSetListenerConfigName(autoscalingListener), Namespace: autoscalingListener.Namespace}, config)
return err
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval,
).Should(Succeed(), "Config secret should be created")
// Check if pod is created // Check if pod is created
pod := new(corev1.Pod) pod := new(corev1.Pod)
Eventually( Eventually(
@@ -701,6 +762,155 @@ var _ = Describe("Test AutoScalingListener controller with proxy", func() {
}) })
}) })
var _ = Describe("Test AutoScalingListener controller with template modification", func() {
var ctx context.Context
var mgr ctrl.Manager
var autoscalingNS *corev1.Namespace
var autoscalingRunnerSet *actionsv1alpha1.AutoscalingRunnerSet
var configSecret *corev1.Secret
var autoscalingListener *actionsv1alpha1.AutoscalingListener
createRunnerSetAndListener := func(listenerTemplate *corev1.PodTemplateSpec) {
min := 1
max := 10
autoscalingRunnerSet = &actionsv1alpha1.AutoscalingRunnerSet{
ObjectMeta: metav1.ObjectMeta{
Name: "test-asrs",
Namespace: autoscalingNS.Name,
},
Spec: actionsv1alpha1.AutoscalingRunnerSetSpec{
GitHubConfigUrl: "https://github.com/owner/repo",
GitHubConfigSecret: configSecret.Name,
MaxRunners: &max,
MinRunners: &min,
Template: corev1.PodTemplateSpec{
Spec: corev1.PodSpec{
Containers: []corev1.Container{
{
Name: "runner",
Image: "ghcr.io/actions/runner",
},
},
},
},
ListenerTemplate: listenerTemplate,
},
}
err := k8sClient.Create(ctx, autoscalingRunnerSet)
Expect(err).NotTo(HaveOccurred(), "failed to create AutoScalingRunnerSet")
autoscalingListener = &actionsv1alpha1.AutoscalingListener{
ObjectMeta: metav1.ObjectMeta{
Name: "test-asl",
Namespace: autoscalingNS.Name,
},
Spec: actionsv1alpha1.AutoscalingListenerSpec{
GitHubConfigUrl: "https://github.com/owner/repo",
GitHubConfigSecret: configSecret.Name,
RunnerScaleSetId: 1,
AutoscalingRunnerSetNamespace: autoscalingRunnerSet.Namespace,
AutoscalingRunnerSetName: autoscalingRunnerSet.Name,
EphemeralRunnerSetName: "test-ers",
MaxRunners: 10,
MinRunners: 1,
Image: "ghcr.io/owner/repo",
Template: listenerTemplate,
},
}
err = k8sClient.Create(ctx, autoscalingListener)
Expect(err).NotTo(HaveOccurred(), "failed to create AutoScalingListener")
}
BeforeEach(func() {
ctx = context.Background()
autoscalingNS, mgr = createNamespace(GinkgoT(), k8sClient)
configSecret = createDefaultSecret(GinkgoT(), k8sClient, autoscalingNS.Name)
controller := &AutoscalingListenerReconciler{
Client: mgr.GetClient(),
Scheme: mgr.GetScheme(),
Log: logf.Log,
}
err := controller.SetupWithManager(mgr)
Expect(err).NotTo(HaveOccurred(), "failed to setup controller")
startManagers(GinkgoT(), mgr)
})
It("Should create listener pod with modified spec", func() {
runAsUser1001 := int64(1001)
runAsUser1000 := int64(1000)
tmpl := &corev1.PodTemplateSpec{
ObjectMeta: metav1.ObjectMeta{
Annotations: map[string]string{
"test-annotation-key": "test-annotation-value",
},
Labels: map[string]string{
"test-label-key": "test-label-value",
},
},
Spec: corev1.PodSpec{
Containers: []corev1.Container{
{
Name: "listener",
ImagePullPolicy: corev1.PullAlways,
SecurityContext: &corev1.SecurityContext{
RunAsUser: &runAsUser1001,
},
},
{
Name: "sidecar",
ImagePullPolicy: corev1.PullIfNotPresent,
Image: "busybox",
},
},
SecurityContext: &corev1.PodSecurityContext{
RunAsUser: &runAsUser1000,
},
},
}
createRunnerSetAndListener(tmpl)
// wait for listener pod to be created
Eventually(
func(g Gomega) {
pod := new(corev1.Pod)
err := k8sClient.Get(
ctx,
client.ObjectKey{Name: autoscalingListener.Name, Namespace: autoscalingListener.Namespace},
pod,
)
g.Expect(err).NotTo(HaveOccurred(), "failed to get pod")
g.Expect(pod.ObjectMeta.Annotations).To(HaveKeyWithValue("test-annotation-key", "test-annotation-value"), "pod annotations should be copied from runner set template")
g.Expect(pod.ObjectMeta.Labels).To(HaveKeyWithValue("test-label-key", "test-label-value"), "pod labels should be copied from runner set template")
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval).Should(Succeed(), "failed to create listener pod with proxy details")
// Delete the AutoScalingListener
err := k8sClient.Delete(ctx, autoscalingListener)
Expect(err).NotTo(HaveOccurred(), "failed to delete test AutoScalingListener")
Eventually(
func(g Gomega) {
var proxySecret corev1.Secret
err := k8sClient.Get(
ctx,
types.NamespacedName{Name: proxyListenerSecretName(autoscalingListener), Namespace: autoscalingNS.Name},
&proxySecret,
)
g.Expect(kerrors.IsNotFound(err)).To(BeTrue())
},
autoscalingListenerTestTimeout,
autoscalingListenerTestInterval).Should(Succeed(), "failed to delete secret with proxy details")
})
})
var _ = Describe("Test GitHub Server TLS configuration", func() { var _ = Describe("Test GitHub Server TLS configuration", func() {
var ctx context.Context var ctx context.Context
var mgr ctrl.Manager var mgr ctrl.Manager
@@ -816,31 +1026,26 @@ var _ = Describe("Test GitHub Server TLS configuration", func() {
}) })
Context("When creating a new AutoScalingListener", func() { Context("When creating a new AutoScalingListener", func() {
It("It should set the certificates as an environment variable on the pod", func() { It("It should set the certificates in the config of the pod", func() {
pod := new(corev1.Pod) config := new(corev1.Secret)
Eventually( Eventually(
func(g Gomega) { func(g Gomega) {
err := k8sClient.Get( err := k8sClient.Get(
ctx, ctx,
client.ObjectKey{ client.ObjectKey{
Name: autoscalingListener.Name, Name: scaleSetListenerConfigName(autoscalingListener),
Namespace: autoscalingListener.Namespace, Namespace: autoscalingListener.Namespace,
}, },
pod, config,
) )
g.Expect(err).NotTo(HaveOccurred(), "failed to get pod") g.Expect(err).NotTo(HaveOccurred(), "failed to get pod")
g.Expect(pod.Spec.Containers).NotTo(BeEmpty(), "pod should have containers")
g.Expect(pod.Spec.Containers[0].Env).NotTo(BeEmpty(), "pod should have env variables")
var env *corev1.EnvVar g.Expect(config.Data["config.json"]).ToNot(BeEmpty(), "listener configuration file should not be empty")
for _, e := range pod.Spec.Containers[0].Env {
if e.Name == "GITHUB_SERVER_ROOT_CA" { var listenerConfig listenerconfig.Config
env = &e err = json.Unmarshal(config.Data["config.json"], &listenerConfig)
break g.Expect(err).NotTo(HaveOccurred(), "failed to parse listener configuration file")
}
}
g.Expect(env).NotTo(BeNil(), "pod should have an env variable named GITHUB_SERVER_ROOT_CA_PATH")
cert, err := os.ReadFile(filepath.Join( cert, err := os.ReadFile(filepath.Join(
"../../", "../../",
@@ -851,7 +1056,7 @@ var _ = Describe("Test GitHub Server TLS configuration", func() {
)) ))
g.Expect(err).NotTo(HaveOccurred(), "failed to read rootCA.crt") g.Expect(err).NotTo(HaveOccurred(), "failed to read rootCA.crt")
g.Expect(env.Value).To( g.Expect(listenerConfig.ServerRootCA).To(
BeEquivalentTo(string(cert)), BeEquivalentTo(string(cert)),
"GITHUB_SERVER_ROOT_CA should be the rootCA.crt", "GITHUB_SERVER_ROOT_CA should be the rootCA.crt",
) )

View File

@@ -1,7 +1,9 @@
package actionsgithubcom package actionsgithubcom
import ( import (
"bytes"
"context" "context"
"encoding/json"
"fmt" "fmt"
"math" "math"
"net" "net"
@@ -9,6 +11,7 @@ import (
"github.com/actions/actions-runner-controller/apis/actions.github.com/v1alpha1" "github.com/actions/actions-runner-controller/apis/actions.github.com/v1alpha1"
"github.com/actions/actions-runner-controller/build" "github.com/actions/actions-runner-controller/build"
listenerconfig "github.com/actions/actions-runner-controller/cmd/githubrunnerscalesetlistener/config"
"github.com/actions/actions-runner-controller/github/actions" "github.com/actions/actions-runner-controller/github/actions"
"github.com/actions/actions-runner-controller/hash" "github.com/actions/actions-runner-controller/hash"
"github.com/actions/actions-runner-controller/logging" "github.com/actions/actions-runner-controller/logging"
@@ -33,21 +36,6 @@ var commonLabelKeys = [...]string{
LabelKeyGitHubRepository, LabelKeyGitHubRepository,
} }
var reservedListenerContainerEnvKeys = map[string]struct{}{
"GITHUB_CONFIGURE_URL": {},
"GITHUB_EPHEMERAL_RUNNER_SET_NAMESPACE": {},
"GITHUB_EPHEMERAL_RUNNER_SET_NAME": {},
"GITHUB_MAX_RUNNERS": {},
"GITHUB_MIN_RUNNERS": {},
"GITHUB_RUNNER_SCALE_SET_ID": {},
"GITHUB_RUNNER_LOG_LEVEL": {},
"GITHUB_RUNNER_LOG_FORMAT": {},
"GITHUB_TOKEN": {},
"GITHUB_APP_ID": {},
"GITHUB_APP_INSTALLATION_ID": {},
"GITHUB_APP_PRIVATE_KEY": {},
}
const labelValueKubernetesPartOf = "gha-runner-scale-set" const labelValueKubernetesPartOf = "gha-runner-scale-set"
var scaleSetListenerLogLevel = DefaultScaleSetListenerLogLevel var scaleSetListenerLogLevel = DefaultScaleSetListenerLogLevel
@@ -144,133 +132,101 @@ type listenerMetricsServerConfig struct {
endpoint string endpoint string
} }
func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.AutoscalingListener, serviceAccount *corev1.ServiceAccount, secret *corev1.Secret, metricsConfig *listenerMetricsServerConfig, envs ...corev1.EnvVar) (*corev1.Pod, error) { func (lm *listenerMetricsServerConfig) containerPort() (corev1.ContainerPort, error) {
_, portStr, err := net.SplitHostPort(lm.addr)
if err != nil {
return corev1.ContainerPort{}, err
}
port, err := strconv.ParseInt(portStr, 10, 32)
if err != nil {
return corev1.ContainerPort{}, err
}
return corev1.ContainerPort{
ContainerPort: int32(port),
Protocol: corev1.ProtocolTCP,
Name: "metrics",
}, nil
}
func (b *resourceBuilder) newScaleSetListenerConfig(autoscalingListener *v1alpha1.AutoscalingListener, secret *corev1.Secret, metricsConfig *listenerMetricsServerConfig, cert string) (*corev1.Secret, error) {
var (
metricsAddr = ""
metricsEndpoint = ""
)
if metricsConfig != nil {
metricsAddr = metricsConfig.addr
metricsEndpoint = metricsConfig.endpoint
}
var appID int64
if id, ok := secret.Data["github_app_id"]; ok {
var err error
appID, err = strconv.ParseInt(string(id), 10, 64)
if err != nil {
return nil, fmt.Errorf("failed to convert github_app_id to int: %v", err)
}
}
var appInstallationID int64
if id, ok := secret.Data["github_app_installation_id"]; ok {
var err error
appInstallationID, err = strconv.ParseInt(string(id), 10, 64)
if err != nil {
return nil, fmt.Errorf("failed to convert github_app_installation_id to int: %v", err)
}
}
config := listenerconfig.Config{
ConfigureUrl: autoscalingListener.Spec.GitHubConfigUrl,
AppID: appID,
AppInstallationID: appInstallationID,
AppPrivateKey: string(secret.Data["github_app_private_key"]),
Token: string(secret.Data["github_token"]),
EphemeralRunnerSetNamespace: autoscalingListener.Spec.AutoscalingRunnerSetNamespace,
EphemeralRunnerSetName: autoscalingListener.Spec.EphemeralRunnerSetName,
MaxRunners: autoscalingListener.Spec.MaxRunners,
MinRunners: autoscalingListener.Spec.MinRunners,
RunnerScaleSetId: autoscalingListener.Spec.RunnerScaleSetId,
RunnerScaleSetName: autoscalingListener.Spec.AutoscalingRunnerSetName,
ServerRootCA: cert,
LogLevel: scaleSetListenerLogLevel,
LogFormat: scaleSetListenerLogFormat,
MetricsAddr: metricsAddr,
MetricsEndpoint: metricsEndpoint,
}
var buf bytes.Buffer
if err := json.NewEncoder(&buf).Encode(config); err != nil {
return nil, fmt.Errorf("failed to encode config: %w", err)
}
return &corev1.Secret{
ObjectMeta: metav1.ObjectMeta{
Name: scaleSetListenerConfigName(autoscalingListener),
Namespace: autoscalingListener.Namespace,
},
Data: map[string][]byte{
"config.json": buf.Bytes(),
},
}, nil
}
func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.AutoscalingListener, podConfig *corev1.Secret, serviceAccount *corev1.ServiceAccount, secret *corev1.Secret, metricsConfig *listenerMetricsServerConfig, envs ...corev1.EnvVar) (*corev1.Pod, error) {
listenerEnv := []corev1.EnvVar{ listenerEnv := []corev1.EnvVar{
{ {
Name: "GITHUB_CONFIGURE_URL", Name: "LISTENER_CONFIG_PATH",
Value: autoscalingListener.Spec.GitHubConfigUrl, Value: "/etc/gha-listener/config.json",
},
{
Name: "GITHUB_EPHEMERAL_RUNNER_SET_NAMESPACE",
Value: autoscalingListener.Spec.AutoscalingRunnerSetNamespace,
},
{
Name: "GITHUB_EPHEMERAL_RUNNER_SET_NAME",
Value: autoscalingListener.Spec.EphemeralRunnerSetName,
},
{
Name: "GITHUB_MAX_RUNNERS",
Value: strconv.Itoa(autoscalingListener.Spec.MaxRunners),
},
{
Name: "GITHUB_MIN_RUNNERS",
Value: strconv.Itoa(autoscalingListener.Spec.MinRunners),
},
{
Name: "GITHUB_RUNNER_SCALE_SET_ID",
Value: strconv.Itoa(autoscalingListener.Spec.RunnerScaleSetId),
},
{
Name: "GITHUB_RUNNER_SCALE_SET_NAME",
Value: autoscalingListener.Spec.AutoscalingRunnerSetName,
},
{
Name: "GITHUB_RUNNER_LOG_LEVEL",
Value: scaleSetListenerLogLevel,
},
{
Name: "GITHUB_RUNNER_LOG_FORMAT",
Value: scaleSetListenerLogFormat,
}, },
} }
listenerEnv = append(listenerEnv, envs...) listenerEnv = append(listenerEnv, envs...)
if _, ok := secret.Data["github_token"]; ok {
listenerEnv = append(listenerEnv, corev1.EnvVar{
Name: "GITHUB_TOKEN",
ValueFrom: &corev1.EnvVarSource{
SecretKeyRef: &corev1.SecretKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
Name: secret.Name,
},
Key: "github_token",
},
},
})
}
if _, ok := secret.Data["github_app_id"]; ok {
listenerEnv = append(listenerEnv, corev1.EnvVar{
Name: "GITHUB_APP_ID",
ValueFrom: &corev1.EnvVarSource{
SecretKeyRef: &corev1.SecretKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
Name: secret.Name,
},
Key: "github_app_id",
},
},
})
}
if _, ok := secret.Data["github_app_installation_id"]; ok {
listenerEnv = append(listenerEnv, corev1.EnvVar{
Name: "GITHUB_APP_INSTALLATION_ID",
ValueFrom: &corev1.EnvVarSource{
SecretKeyRef: &corev1.SecretKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
Name: secret.Name,
},
Key: "github_app_installation_id",
},
},
})
}
if _, ok := secret.Data["github_app_private_key"]; ok {
listenerEnv = append(listenerEnv, corev1.EnvVar{
Name: "GITHUB_APP_PRIVATE_KEY",
ValueFrom: &corev1.EnvVarSource{
SecretKeyRef: &corev1.SecretKeySelector{
LocalObjectReference: corev1.LocalObjectReference{
Name: secret.Name,
},
Key: "github_app_private_key",
},
},
})
}
var ports []corev1.ContainerPort var ports []corev1.ContainerPort
if metricsConfig != nil && len(metricsConfig.addr) != 0 { if metricsConfig != nil && len(metricsConfig.addr) != 0 {
listenerEnv = append( port, err := metricsConfig.containerPort()
listenerEnv,
corev1.EnvVar{
Name: "GITHUB_METRICS_ADDR",
Value: metricsConfig.addr,
},
corev1.EnvVar{
Name: "GITHUB_METRICS_ENDPOINT",
Value: metricsConfig.endpoint,
},
)
_, portStr, err := net.SplitHostPort(metricsConfig.addr)
if err != nil { if err != nil {
return nil, fmt.Errorf("failed to split host:port for metrics address: %v", err) return nil, fmt.Errorf("failed to convert metrics server address to container port: %v", err)
} }
port, err := strconv.ParseInt(portStr, 10, 32) ports = append(ports, port)
if err != nil {
return nil, fmt.Errorf("failed to convert port %q to int32: %v", portStr, err)
}
ports = append(
ports,
corev1.ContainerPort{
ContainerPort: int32(port),
Protocol: corev1.ProtocolTCP,
Name: "metrics",
},
)
} }
podSpec := corev1.PodSpec{ podSpec := corev1.PodSpec{
@@ -285,6 +241,23 @@ func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.A
"/github-runnerscaleset-listener", "/github-runnerscaleset-listener",
}, },
Ports: ports, Ports: ports,
VolumeMounts: []corev1.VolumeMount{
{
Name: "listener-config",
MountPath: "/etc/gha-listener",
ReadOnly: true,
},
},
},
},
Volumes: []corev1.Volume{
{
Name: "listener-config",
VolumeSource: corev1.VolumeSource{
Secret: &corev1.SecretVolumeSource{
SecretName: podConfig.Name,
},
},
}, },
}, },
ImagePullSecrets: autoscalingListener.Spec.ImagePullSecrets, ImagePullSecrets: autoscalingListener.Spec.ImagePullSecrets,
@@ -317,7 +290,9 @@ func (b *resourceBuilder) newScaleSetListenerPod(autoscalingListener *v1alpha1.A
} }
func mergeListenerPodWithTemplate(pod *corev1.Pod, tmpl *corev1.PodTemplateSpec) { func mergeListenerPodWithTemplate(pod *corev1.Pod, tmpl *corev1.PodTemplateSpec) {
// apply metadata if pod.Annotations == nil {
pod.Annotations = make(map[string]string)
}
for k, v := range tmpl.Annotations { for k, v := range tmpl.Annotations {
if _, ok := pod.Annotations[k]; !ok { if _, ok := pod.Annotations[k]; !ok {
pod.Annotations[k] = v pod.Annotations[k] = v
@@ -346,7 +321,7 @@ func mergeListenerPodWithTemplate(pod *corev1.Pod, tmpl *corev1.PodTemplateSpec)
} }
// apply pod related spec // apply pod related spec
// NOTE: fields that should be gnored // NOTE: fields that should be ignored
// - service account based fields // - service account based fields
if tmpl.Spec.RestartPolicy != "" { if tmpl.Spec.RestartPolicy != "" {
@@ -357,7 +332,7 @@ func mergeListenerPodWithTemplate(pod *corev1.Pod, tmpl *corev1.PodTemplateSpec)
pod.Spec.ImagePullSecrets = tmpl.Spec.ImagePullSecrets pod.Spec.ImagePullSecrets = tmpl.Spec.ImagePullSecrets
} }
pod.Spec.Volumes = tmpl.Spec.Volumes pod.Spec.Volumes = append(pod.Spec.Volumes, tmpl.Spec.Volumes...)
pod.Spec.InitContainers = tmpl.Spec.InitContainers pod.Spec.InitContainers = tmpl.Spec.InitContainers
pod.Spec.EphemeralContainers = tmpl.Spec.EphemeralContainers pod.Spec.EphemeralContainers = tmpl.Spec.EphemeralContainers
pod.Spec.TerminationGracePeriodSeconds = tmpl.Spec.TerminationGracePeriodSeconds pod.Spec.TerminationGracePeriodSeconds = tmpl.Spec.TerminationGracePeriodSeconds
@@ -403,11 +378,7 @@ func mergeListenerContainer(base, from *corev1.Container) {
base.Command = from.Command base.Command = from.Command
} }
for _, v := range from.Env { base.Env = append(base.Env, from.Env...)
if _, ok := reservedListenerContainerEnvKeys[v.Name]; !ok {
base.Env = append(base.Env, v)
}
}
if from.ImagePullPolicy != "" { if from.ImagePullPolicy != "" {
base.ImagePullPolicy = from.ImagePullPolicy base.ImagePullPolicy = from.ImagePullPolicy
@@ -680,6 +651,10 @@ func (b *resourceBuilder) newEphemeralRunnerJitSecret(ephemeralRunner *v1alpha1.
} }
} }
func scaleSetListenerConfigName(autoscalingListener *v1alpha1.AutoscalingListener) string {
return fmt.Sprintf("%s-config", autoscalingListener.Name)
}
func scaleSetListenerName(autoscalingRunnerSet *v1alpha1.AutoscalingRunnerSet) string { func scaleSetListenerName(autoscalingRunnerSet *v1alpha1.AutoscalingRunnerSet) string {
namespaceHash := hash.FNVHashString(autoscalingRunnerSet.Namespace) namespaceHash := hash.FNVHashString(autoscalingRunnerSet.Namespace)
if len(namespaceHash) > 8 { if len(namespaceHash) > 8 {

View File

@@ -68,7 +68,7 @@ func TestLabelPropagation(t *testing.T) {
Name: "test", Name: "test",
}, },
} }
listenerPod, err := b.newScaleSetListenerPod(listener, listenerServiceAccount, listenerSecret, nil) listenerPod, err := b.newScaleSetListenerPod(listener, &corev1.Secret{}, listenerServiceAccount, listenerSecret, nil)
require.NoError(t, err) require.NoError(t, err)
assert.Equal(t, listenerPod.Labels, listener.Labels) assert.Equal(t, listenerPod.Labels, listener.Labels)

View File

@@ -43,6 +43,12 @@ You can follow [this troubleshooting guide](https://docs.github.com/en/actions/h
## Changelog ## Changelog
### v0.6.1
1. Replace TLS dockerd connection with unix socket (#2833)[https://github.com/actions/actions-runner-controller/pull/2833]
1. Fix name override labels when runnerScaleSetName value is set (#2915)[https://github.com/actions/actions-runner-controller/pull/2915]
1. Fix nil map when annotations are applied (#2916)[https://github.com/actions/actions-runner-controller/pull/2916]
1. Updates: container-hooks to v0.4.0 (#2928)[https://github.com/actions/actions-runner-controller/pull/2928]
### v0.6.0 ### v0.6.0
1. Fix parsing AcquireJob MessageQueueTokenExpiredError (#2837)[https://github.com/actions/actions-runner-controller/pull/2837] 1. Fix parsing AcquireJob MessageQueueTokenExpiredError (#2837)[https://github.com/actions/actions-runner-controller/pull/2837]
1. Set restart policy on the runner pod to Never if restartPolicy is not set in template (#2787)[https://github.com/actions/actions-runner-controller/pull/2787] 1. Set restart policy on the runner pod to Never if restartPolicy is not set in template (#2787)[https://github.com/actions/actions-runner-controller/pull/2787]

6
go.mod
View File

@@ -30,9 +30,9 @@ require (
golang.org/x/sync v0.2.0 golang.org/x/sync v0.2.0
gomodules.xyz/jsonpatch/v2 v2.2.0 gomodules.xyz/jsonpatch/v2 v2.2.0
gopkg.in/yaml.v2 v2.4.0 gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.26.2 k8s.io/api v0.26.9
k8s.io/apimachinery v0.26.2 k8s.io/apimachinery v0.26.9
k8s.io/client-go v0.26.2 k8s.io/client-go v0.26.9
sigs.k8s.io/controller-runtime v0.14.4 sigs.k8s.io/controller-runtime v0.14.4
sigs.k8s.io/yaml v1.3.0 sigs.k8s.io/yaml v1.3.0
) )

12
go.sum
View File

@@ -395,14 +395,14 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
k8s.io/api v0.26.2 h1:dM3cinp3PGB6asOySalOZxEG4CZ0IAdJsrYZXE/ovGQ= k8s.io/api v0.26.9 h1:s8Y+G1u2JM55b90+Yo2RVb3PGT/hkWNVPN4idPERxJg=
k8s.io/api v0.26.2/go.mod h1:1kjMQsFE+QHPfskEcVNgL3+Hp88B80uj0QtSOlj8itU= k8s.io/api v0.26.9/go.mod h1:W/W4fEWRVzPD36820LlVUQfNBiSbiq0VPWRFJKwzmUg=
k8s.io/apiextensions-apiserver v0.26.1 h1:cB8h1SRk6e/+i3NOrQgSFij1B2S0Y0wDoNl66bn8RMI= k8s.io/apiextensions-apiserver v0.26.1 h1:cB8h1SRk6e/+i3NOrQgSFij1B2S0Y0wDoNl66bn8RMI=
k8s.io/apiextensions-apiserver v0.26.1/go.mod h1:AptjOSXDGuE0JICx/Em15PaoO7buLwTs0dGleIHixSM= k8s.io/apiextensions-apiserver v0.26.1/go.mod h1:AptjOSXDGuE0JICx/Em15PaoO7buLwTs0dGleIHixSM=
k8s.io/apimachinery v0.26.2 h1:da1u3D5wfR5u2RpLhE/ZtZS2P7QvDgLZTi9wrNZl/tQ= k8s.io/apimachinery v0.26.9 h1:5yAV9cFR7Z4gIorKcAjWnx4uxtxiFsERwq4Pvmx0CCg=
k8s.io/apimachinery v0.26.2/go.mod h1:ats7nN1LExKHvJ9TmwootT00Yz05MuYqPXEXaVeOy5I= k8s.io/apimachinery v0.26.9/go.mod h1:qYzLkrQ9lhrZRh0jNKo2cfvf/R1/kQONnSiyB7NUJU0=
k8s.io/client-go v0.26.2 h1:s1WkVujHX3kTp4Zn4yGNFK+dlDXy1bAAkIl+cFAiuYI= k8s.io/client-go v0.26.9 h1:TGWi/6guEjIgT0Hg871Gsmx0qFuoGyGFjlFedrk7It0=
k8s.io/client-go v0.26.2/go.mod h1:u5EjOuSyBa09yqqyY7m3abZeovO/7D/WehVVlZ2qcqU= k8s.io/client-go v0.26.9/go.mod h1:tU1FZS0bwAmAFyPYpZycUQrQnUMzQ5MHloop7EbX6ow=
k8s.io/component-base v0.26.1 h1:4ahudpeQXHZL5kko+iDHqLj/FSGAEUnSVO0EBbgDd+4= k8s.io/component-base v0.26.1 h1:4ahudpeQXHZL5kko+iDHqLj/FSGAEUnSVO0EBbgDd+4=
k8s.io/component-base v0.26.1/go.mod h1:VHrLR0b58oC035w6YQiBSbtsf0ThuSwXP+p5dD/kAWU= k8s.io/component-base v0.26.1/go.mod h1:VHrLR0b58oC035w6YQiBSbtsf0ThuSwXP+p5dD/kAWU=
k8s.io/klog/v2 v2.80.1 h1:atnLQ121W371wYYFawwYx1aEY2eUfs4l3J72wtgAwV4= k8s.io/klog/v2 v2.80.1 h1:atnLQ121W371wYYFawwYx1aEY2eUfs4l3J72wtgAwV4=

View File

@@ -6,8 +6,8 @@ DIND_ROOTLESS_RUNNER_NAME ?= ${DOCKER_USER}/actions-runner-dind-rootless
OS_IMAGE ?= ubuntu-22.04 OS_IMAGE ?= ubuntu-22.04
TARGETPLATFORM ?= $(shell arch) TARGETPLATFORM ?= $(shell arch)
RUNNER_VERSION ?= 2.309.0 RUNNER_VERSION ?= 2.310.2
RUNNER_CONTAINER_HOOKS_VERSION ?= 0.3.2 RUNNER_CONTAINER_HOOKS_VERSION ?= 0.4.0
DOCKER_VERSION ?= 20.10.23 DOCKER_VERSION ?= 20.10.23
# default list of platforms for which multiarch image is built # default list of platforms for which multiarch image is built

View File

@@ -1,2 +1,2 @@
RUNNER_VERSION=2.309.0 RUNNER_VERSION=2.310.2
RUNNER_CONTAINER_HOOKS_VERSION=0.3.2 RUNNER_CONTAINER_HOOKS_VERSION=0.4.0

View File

@@ -77,9 +77,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \ && curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \
&& chmod +x /usr/bin/dumb-init && chmod +x /usr/bin/dumb-init
# Set this to /home/runner for compatibility with v1 runners ENV RUNNER_ASSETS_DIR=/runnertmp
ARG RUNNER_ASSETS_DIR=/runnertmp
ENV RUNNER_ASSETS_DIR=$RUNNER_ASSETS_DIR
RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \ && if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \
&& mkdir -p "$RUNNER_ASSETS_DIR" \ && mkdir -p "$RUNNER_ASSETS_DIR" \

View File

@@ -54,9 +54,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \ && curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \
&& chmod +x /usr/bin/dumb-init && chmod +x /usr/bin/dumb-init
# Set this to /home/runner for compatibility with v1 runners ENV RUNNER_ASSETS_DIR=/runnertmp
ARG RUNNER_ASSETS_DIR=/runnertmp
ENV RUNNER_ASSETS_DIR=$RUNNER_ASSETS_DIR
RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \ && if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \
&& mkdir -p "$RUNNER_ASSETS_DIR" \ && mkdir -p "$RUNNER_ASSETS_DIR" \

View File

@@ -72,9 +72,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \ && curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \
&& chmod +x /usr/bin/dumb-init && chmod +x /usr/bin/dumb-init
# Set this to /home/runner for compatibility with v1 runners ENV RUNNER_ASSETS_DIR=/runnertmp
ARG RUNNER_ASSETS_DIR=/runnertmp
ENV RUNNER_ASSETS_DIR=$RUNNER_ASSETS_DIR
RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \ && if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \
&& mkdir -p "$RUNNER_ASSETS_DIR" \ && mkdir -p "$RUNNER_ASSETS_DIR" \

View File

@@ -48,9 +48,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \ && curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \
&& chmod +x /usr/bin/dumb-init && chmod +x /usr/bin/dumb-init
# Set this to /home/runner for compatibility with v1 runners ENV RUNNER_ASSETS_DIR=/runnertmp
ARG RUNNER_ASSETS_DIR=/runnertmp
ENV RUNNER_ASSETS_DIR=$RUNNER_ASSETS_DIR
RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \ && if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \
&& mkdir -p "$RUNNER_ASSETS_DIR" \ && mkdir -p "$RUNNER_ASSETS_DIR" \

View File

@@ -68,10 +68,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \ && curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \
&& chmod +x /usr/bin/dumb-init && chmod +x /usr/bin/dumb-init
# Set this to /home/runner for compatibility with v1 runners ENV RUNNER_ASSETS_DIR=/runnertmp
ARG RUNNER_ASSETS_DIR=/runnertmp
ENV RUNNER_ASSETS_DIR=$RUNNER_ASSETS_DIR
ARG EXTERNALS_DIR_NAME=externalstmp
RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \ && if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \
&& mkdir -p "$RUNNER_ASSETS_DIR" \ && mkdir -p "$RUNNER_ASSETS_DIR" \
@@ -80,7 +77,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& tar xzf ./runner.tar.gz \ && tar xzf ./runner.tar.gz \
&& rm runner.tar.gz \ && rm runner.tar.gz \
&& ./bin/installdependencies.sh \ && ./bin/installdependencies.sh \
&& if [ "${EXTERNALS_DIR_NAME}" != externals ]; then mv ./externals ./${EXTERNALS_DIR_NAME}; fi \ && mv ./externals ./externalstmp \
# libyaml-dev is required for ruby/setup-ruby action. # libyaml-dev is required for ruby/setup-ruby action.
# It is installed after installdependencies.sh and before removing /var/lib/apt/lists # It is installed after installdependencies.sh and before removing /var/lib/apt/lists
# to avoid rerunning apt-update on its own. # to avoid rerunning apt-update on its own.

View File

@@ -45,11 +45,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \ && curl -fLo /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_${ARCH} \
&& chmod +x /usr/bin/dumb-init && chmod +x /usr/bin/dumb-init
# Set this to /home/runner for compatibility with v1 runners ENV RUNNER_ASSETS_DIR=/runnertmp
ARG RUNNER_ASSETS_DIR=/runnertmp
ENV RUNNER_ASSETS_DIR=$RUNNER_ASSETS_DIR
# Set this to "externals" for compatibility with v1 runners
ARG EXTERNALS_DIR_NAME=externalstmp
RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \ && if [ "$ARCH" = "amd64" ] || [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "i386" ]; then export ARCH=x64 ; fi \
&& mkdir -p "$RUNNER_ASSETS_DIR" \ && mkdir -p "$RUNNER_ASSETS_DIR" \
@@ -58,7 +54,7 @@ RUN export ARCH=$(echo ${TARGETPLATFORM} | cut -d / -f2) \
&& tar xzf ./runner.tar.gz \ && tar xzf ./runner.tar.gz \
&& rm runner.tar.gz \ && rm runner.tar.gz \
&& ./bin/installdependencies.sh \ && ./bin/installdependencies.sh \
&& if [ "${EXTERNALS_DIR_NAME}" != externals ]; then mv ./externals ./${EXTERNALS_DIR_NAME}; fi \ && mv ./externals ./externalstmp \
# libyaml-dev is required for ruby/setup-ruby action. # libyaml-dev is required for ruby/setup-ruby action.
# It is installed after installdependencies.sh and before removing /var/lib/apt/lists # It is installed after installdependencies.sh and before removing /var/lib/apt/lists
# to avoid rerunning apt-update on its own. # to avoid rerunning apt-update on its own.

View File

@@ -16,18 +16,6 @@ if [ -n "${STARTUP_DELAY_IN_SECONDS}" ]; then
sleep "${STARTUP_DELAY_IN_SECONDS}" sleep "${STARTUP_DELAY_IN_SECONDS}"
fi fi
if ! cd "${RUNNER_HOME}"; then
log.error "Failed to cd into ${RUNNER_HOME}"
exit 1
fi
# past that point, it's all relative pathes from /runner
# This is for registering ARC v0 runners.
# ARC v1 runners do not need config.sh for registering themselves.
# ARC v1 runners are supposed to given the ACTIONS_RUNNER_INPUT_JITCONFIG envvars
# so we use it as the trigger to skip config.sh.
if [ -z "${ACTIONS_RUNNER_INPUT_JITCONFIG:-}" ]; then
if [ -z "${GITHUB_URL}" ]; then if [ -z "${GITHUB_URL}" ]; then
log.debug 'Working with public GitHub' log.debug 'Working with public GitHub'
GITHUB_URL="https://github.com/" GITHUB_URL="https://github.com/"
@@ -83,6 +71,13 @@ if [ -z "${ACTIONS_RUNNER_INPUT_JITCONFIG:-}" ]; then
shopt -u dotglob shopt -u dotglob
fi fi
if ! cd "${RUNNER_HOME}"; then
log.error "Failed to cd into ${RUNNER_HOME}"
exit 1
fi
# past that point, it's all relative pathes from /runner
config_args=() config_args=()
if [ "${RUNNER_FEATURE_FLAG_ONCE:-}" != "true" ] && [ "${RUNNER_EPHEMERAL}" == "true" ]; then if [ "${RUNNER_FEATURE_FLAG_ONCE:-}" != "true" ] && [ "${RUNNER_EPHEMERAL}" == "true" ]; then
config_args+=(--ephemeral) config_args+=(--ephemeral)
@@ -116,12 +111,6 @@ if [ -z "${ACTIONS_RUNNER_INPUT_JITCONFIG:-}" ]; then
sleep 1 sleep 1
done done
# Note that ARC v1 runners do create this file, but only after the runner
# agent is up and running.
# On the other hand, this logic assumes the file to be created BEFORE
# the runner is up, by running `config.sh`, which is not present in a v1 runner deployment.
# That's why we need to skip this check for v1 runners.
# Otherwise v1 runner will never start up due to this check.
if [ ! -f .runner ]; then if [ ! -f .runner ]; then
# we couldn't configure and register the runner; no point continuing # we couldn't configure and register the runner; no point continuing
log.error 'Configuration failed!' log.error 'Configuration failed!'
@@ -149,12 +138,8 @@ if [ -z "${ACTIONS_RUNNER_INPUT_JITCONFIG:-}" ]; then
# -H "Accept: application/vnd.github.v3+json" \ # -H "Accept: application/vnd.github.v3+json" \
# -H "Authorization: bearer ${GITHUB_TOKEN}" # -H "Authorization: bearer ${GITHUB_TOKEN}"
# https://api.github.com/repos/USER/REPO/actions/runners/171 # https://api.github.com/repos/USER/REPO/actions/runners/171
fi
# Hack due to the DinD volumes # Hack due to the DinD volumes
# This is necessary only for legacy ARC v0.x.
# ARC v1.x uses the "externals" as the copy source and "tmpDir" as the copy destionation.
# See https://github.com/actions/actions-runner-controller/blob/91c8991835016f8c6568f101d4a28185baec3dcc/charts/gha-runner-scale-set/templates/_helpers.tpl#L76-L87
if [ -z "${UNITTEST:-}" ] && [ -e ./externalstmp ]; then if [ -z "${UNITTEST:-}" ] && [ -e ./externalstmp ]; then
mkdir -p ./externals mkdir -p ./externals
mv ./externalstmp/* ./externals/ mv ./externalstmp/* ./externals/

View File

@@ -36,7 +36,8 @@ var (
testResultCMNamePrefix = "test-result-" testResultCMNamePrefix = "test-result-"
RunnerVersion = "2.309.0" RunnerVersion = "2.310.2"
RunnerContainerHooksVersion = "0.4.0"
) )
// If you're willing to run this test via VS Code "run test" or "debug test", // If you're willing to run this test via VS Code "run test" or "debug test",
@@ -496,6 +497,10 @@ func buildVars(repo, ubuntuVer string) vars {
Name: "RUNNER_VERSION", Name: "RUNNER_VERSION",
Value: RunnerVersion, Value: RunnerVersion,
}, },
{
Name: "RUNNER_CONTAINER_HOOKS_VERSION",
Value: RunnerContainerHooksVersion,
},
}, },
Image: runnerImage, Image: runnerImage,
EnableBuildX: true, EnableBuildX: true,
@@ -507,6 +512,10 @@ func buildVars(repo, ubuntuVer string) vars {
Name: "RUNNER_VERSION", Name: "RUNNER_VERSION",
Value: RunnerVersion, Value: RunnerVersion,
}, },
{
Name: "RUNNER_CONTAINER_HOOKS_VERSION",
Value: RunnerContainerHooksVersion,
},
}, },
Image: runnerDindImage, Image: runnerDindImage,
EnableBuildX: true, EnableBuildX: true,
@@ -518,6 +527,10 @@ func buildVars(repo, ubuntuVer string) vars {
Name: "RUNNER_VERSION", Name: "RUNNER_VERSION",
Value: RunnerVersion, Value: RunnerVersion,
}, },
{
Name: "RUNNER_CONTAINER_HOOKS_VERSION",
Value: RunnerContainerHooksVersion,
},
}, },
Image: runnerRootlessDindImage, Image: runnerRootlessDindImage,
EnableBuildX: true, EnableBuildX: true,

View File

@@ -15,7 +15,7 @@ startup_log() {
} }
log "Setting up test area" log "Setting up test area"
export RUNNER_HOME=$(pwd)/testarea export RUNNER_HOME=testarea
mkdir -p ${RUNNER_HOME} mkdir -p ${RUNNER_HOME}
log "Setting up the test config" log "Setting up the test config"
@@ -49,9 +49,7 @@ log ""
# Run the runner startup script which as a final step runs this # Run the runner startup script which as a final step runs this
# unit tests run.sh as it was symlinked # unit tests run.sh as it was symlinked
cd ../../../runner ../../../runner/startup.sh 2> >(startup_log)
export PATH=${PATH}:$(pwd)
./startup.sh 2> >(startup_log)
if [ "$?" != "2" ]; then if [ "$?" != "2" ]; then
error "=========================================" error "========================================="

View File

@@ -15,7 +15,7 @@ startup_log() {
} }
log "Setting up test area" log "Setting up test area"
export RUNNER_HOME=$(pwd)/testarea export RUNNER_HOME=testarea
mkdir -p ${RUNNER_HOME} mkdir -p ${RUNNER_HOME}
log "Setting up the test" log "Setting up the test"
@@ -49,9 +49,7 @@ log ""
# Run the runner entrypstartupoint script which as a final step runs this # Run the runner entrypstartupoint script which as a final step runs this
# unit tests run.sh as it was symlinked # unit tests run.sh as it was symlinked
cd ../../../runner ../../../runner/startup.sh 2> >(startup_log)
export PATH=${PATH}:$(pwd)
./startup.sh 2> >(startup_log)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
error "===========================================" error "==========================================="

View File

@@ -15,7 +15,7 @@ startup_log() {
} }
log "Setting up test area" log "Setting up test area"
export RUNNER_HOME=$(pwd)/testarea export RUNNER_HOME=testarea
mkdir -p ${RUNNER_HOME} mkdir -p ${RUNNER_HOME}
log "Setting up the test" log "Setting up the test"
@@ -47,9 +47,7 @@ log ""
# Run the runner startup script which as a final step runs this # Run the runner startup script which as a final step runs this
# unit tests run.sh as it was symlinked # unit tests run.sh as it was symlinked
cd ../../../runner ../../../runner/startup.sh 2> >(startup_log)
export PATH=${PATH}:$(pwd)
./startup.sh 2> >(startup_log)
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
error "==========================" error "=========================="

View File

@@ -0,0 +1,87 @@
#!/usr/bin/env bash
# UNITTEST: should work disable update
# Will simulate a scneario where disableupdate=true. expects:
# - the configuration step to be run exactly once
# - the startup script to exit with no error
# - the config.sh script to run with the --disableupdate flag set to 'true'.
source ../assets/logging.sh
startup_log() {
while read I; do
printf "\tstartup.sh: $I\n"
done
}
log "Setting up test area"
export RUNNER_HOME=testarea
mkdir -p ${RUNNER_HOME}
log "Setting up the test"
export UNITTEST=true
export RUNNER_NAME="example_runner_name"
export RUNNER_REPO="myorg/myrepo"
export RUNNER_TOKEN="xxxxxxxxxxxxx"
export DISABLE_RUNNER_UPDATE="true"
# run.sh and config.sh get used by the runner's real entrypoint.sh and are part of actions/runner.
# We change symlink dummy versions so the entrypoint.sh can run allowing us to test the real entrypoint.sh
log "Symlink dummy config.sh and run.sh"
ln -s ../../assets/config.sh ${RUNNER_HOME}/config.sh
ln -s ../../assets/run.sh ${RUNNER_HOME}/run.sh
cleanup() {
rm -rf ${RUNNER_HOME}
unset UNITTEST
unset RUNNERHOME
unset RUNNER_NAME
unset RUNNER_REPO
unset RUNNER_TOKEN
}
# Always run cleanup when test ends regardless of how it ends
trap cleanup SIGINT SIGTERM SIGQUIT EXIT
log "Running the startup script"
log ""
# run.sh and config.sh get used by the runner's real startup.sh and are part of actions/runner.
# We change symlink dummy versions so the startup.sh can run allowing us to test the real entrypoint.sh
../../../runner/startup.sh 2> >(startup_log)
if [ "$?" != "0" ]; then
error "=========================="
error "FAIL | Test completed with errors"
exit 1
fi
log "Testing if the configuration step was run only once"
count=`cat ${RUNNER_HOME}/counter || echo "not_found"`
if [ ${count} != "1" ]; then
error "==============================================="
error "FAIL | The configuration step was not run exactly once"
exit 1
fi
success "PASS | The configuration ran ${count} time(s)"
log "Testing if the configuration included the --disableupdate flag"
if ! grep -q -- '--disableupdate' ${RUNNER_HOME}/runner_config; then
error "==============================================="
error "FAIL | The configuration should not include the --disableupdate flag"
exit 1
fi
success "PASS | The --disableupdate switch was included in the configuration"
log "Testing if run.sh ran"
if [ ! -f "${RUNNER_HOME}/run_sh_ran" ]; then
error "=============================="
error "FAIL | The runner service has not run"
exit 1
fi
success "PASS | run.sh ran"
success ""
success "==========================="
success "Test completed successfully"

View File

@@ -21,6 +21,9 @@ var images = map[string]string{
"1.22": "kindest/node:v1.22.9@sha256:8135260b959dfe320206eb36b3aeda9cffcb262f4b44cda6b33f7bb73f453105", "1.22": "kindest/node:v1.22.9@sha256:8135260b959dfe320206eb36b3aeda9cffcb262f4b44cda6b33f7bb73f453105",
"1.23": "kindest/node:v1.23.6@sha256:b1fa224cc6c7ff32455e0b1fd9cbfd3d3bc87ecaa8fcb06961ed1afb3db0f9ae", "1.23": "kindest/node:v1.23.6@sha256:b1fa224cc6c7ff32455e0b1fd9cbfd3d3bc87ecaa8fcb06961ed1afb3db0f9ae",
"1.24": "kindest/node:v1.24.0@sha256:0866296e693efe1fed79d5e6c7af8df71fc73ae45e3679af05342239cdc5bc8e", "1.24": "kindest/node:v1.24.0@sha256:0866296e693efe1fed79d5e6c7af8df71fc73ae45e3679af05342239cdc5bc8e",
"1.25": "kindest/node:v1.25.11@sha256:227fa11ce74ea76a0474eeefb84cb75d8dad1b08638371ecf0e86259b35be0c8",
"1.26": "kindest/node:v1.26.6@sha256:6e2d8b28a5b601defe327b98bd1c2d1930b49e5d8c512e1895099e4504007adb",
"1.27": "kindest/node:v1.27.3@sha256:3966ac761ae0136263ffdb6cfd4db23ef8a83cba8a463690e98317add2c9ba72",
} }
func Img(repo, tag string) ContainerImage { func Img(repo, tag string) ContainerImage {
@@ -335,7 +338,10 @@ func (k *Kind) Start(ctx context.Context, k8sMinorVer string) error {
return err return err
} }
image := images[k8sMinorVer] image, ok := images[k8sMinorVer]
if !ok {
return fmt.Errorf("no kind image found for k8s minor version %q", k8sMinorVer)
}
kindConfig := []byte(fmt.Sprintf(`kind: Cluster kindConfig := []byte(fmt.Sprintf(`kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4 apiVersion: kind.x-k8s.io/v1alpha4