Skip to content

Commit ceba7d7

Browse files
Merge branch 'main' into skip-terminates-affected-az
2 parents 05311ba + dae2c18 commit ceba7d7

File tree

67 files changed

+1996
-323
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+1996
-323
lines changed

charts/karpenter-crd/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ apiVersion: v2
22
name: karpenter-crd
33
description: A Helm chart for Karpenter Custom Resource Definitions (CRDs).
44
type: application
5-
version: 1.9.0
6-
appVersion: 1.9.0
5+
version: 1.10.0
6+
appVersion: 1.10.0
77
keywords:
88
- cluster
99
- node

charts/karpenter-crd/templates/karpenter.k8s.aws_ec2nodeclasses.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -724,6 +724,9 @@ spec:
724724
instanceType:
725725
description: The instance type for the capacity reservation.
726726
type: string
727+
interruptible:
728+
description: Indicates whether this capacity reservation is interruptible
729+
type: boolean
727730
ownerID:
728731
description: The ID of the AWS account that owns the capacity reservation.
729732
pattern: ^[0-9]{12}$

charts/karpenter-crd/templates/karpenter.sh_nodeclaims.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ spec:
137137
- message: label "kubernetes.io/hostname" is restricted
138138
rule: self != "kubernetes.io/hostname"
139139
- message: label domain "karpenter.k8s.aws" is restricted
140-
rule: self in ["karpenter.k8s.aws/instance-tenancy", "karpenter.k8s.aws/capacity-reservation-type", "karpenter.k8s.aws/capacity-reservation-id", "karpenter.k8s.aws/ec2nodeclass", "karpenter.k8s.aws/instance-encryption-in-transit-supported", "karpenter.k8s.aws/instance-category", "karpenter.k8s.aws/instance-hypervisor", "karpenter.k8s.aws/instance-family", "karpenter.k8s.aws/instance-generation", "karpenter.k8s.aws/instance-local-nvme", "karpenter.k8s.aws/instance-size", "karpenter.k8s.aws/instance-cpu", "karpenter.k8s.aws/instance-cpu-manufacturer", "karpenter.k8s.aws/instance-cpu-sustained-clock-speed-mhz", "karpenter.k8s.aws/instance-memory", "karpenter.k8s.aws/instance-ebs-bandwidth", "karpenter.k8s.aws/instance-network-bandwidth", "karpenter.k8s.aws/instance-gpu-name", "karpenter.k8s.aws/instance-gpu-manufacturer", "karpenter.k8s.aws/instance-gpu-count", "karpenter.k8s.aws/instance-gpu-memory", "karpenter.k8s.aws/instance-accelerator-name", "karpenter.k8s.aws/instance-accelerator-manufacturer", "karpenter.k8s.aws/instance-accelerator-count", "karpenter.k8s.aws/instance-capability-flex"] || !self.find("^([^/]+)").endsWith("karpenter.k8s.aws")
140+
rule: self in ["karpenter.k8s.aws/instance-tenancy", "karpenter.k8s.aws/capacity-reservation-type", "karpenter.k8s.aws/capacity-reservation-id", "karpenter.k8s.aws/capacity-reservation-interruptible", "karpenter.k8s.aws/ec2nodeclass", "karpenter.k8s.aws/instance-encryption-in-transit-supported", "karpenter.k8s.aws/instance-category", "karpenter.k8s.aws/instance-hypervisor", "karpenter.k8s.aws/instance-family", "karpenter.k8s.aws/instance-generation", "karpenter.k8s.aws/instance-local-nvme", "karpenter.k8s.aws/instance-size", "karpenter.k8s.aws/instance-cpu", "karpenter.k8s.aws/instance-cpu-manufacturer", "karpenter.k8s.aws/instance-cpu-sustained-clock-speed-mhz", "karpenter.k8s.aws/instance-memory", "karpenter.k8s.aws/instance-ebs-bandwidth", "karpenter.k8s.aws/instance-network-bandwidth", "karpenter.k8s.aws/instance-gpu-name", "karpenter.k8s.aws/instance-gpu-manufacturer", "karpenter.k8s.aws/instance-gpu-count", "karpenter.k8s.aws/instance-gpu-memory", "karpenter.k8s.aws/instance-accelerator-name", "karpenter.k8s.aws/instance-accelerator-manufacturer", "karpenter.k8s.aws/instance-accelerator-count", "karpenter.k8s.aws/instance-capability-flex"] || !self.find("^([^/]+)").endsWith("karpenter.k8s.aws")
141141
minValues:
142142
description: |-
143143
This field is ALPHA and can be dropped or replaced at any time

charts/karpenter-crd/templates/karpenter.sh_nodepools.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ spec:
225225
- message: label "kubernetes.io/hostname" is restricted
226226
rule: self.all(x, x != "kubernetes.io/hostname")
227227
- message: label domain "karpenter.k8s.aws" is restricted
228-
rule: self.all(x, x in ["karpenter.k8s.aws/instance-tenancy", "karpenter.k8s.aws/capacity-reservation-type", "karpenter.k8s.aws/capacity-reservation-id", "karpenter.k8s.aws/ec2nodeclass", "karpenter.k8s.aws/instance-encryption-in-transit-supported", "karpenter.k8s.aws/instance-category", "karpenter.k8s.aws/instance-hypervisor", "karpenter.k8s.aws/instance-family", "karpenter.k8s.aws/instance-generation", "karpenter.k8s.aws/instance-local-nvme", "karpenter.k8s.aws/instance-size", "karpenter.k8s.aws/instance-cpu", "karpenter.k8s.aws/instance-cpu-manufacturer", "karpenter.k8s.aws/instance-cpu-sustained-clock-speed-mhz", "karpenter.k8s.aws/instance-memory", "karpenter.k8s.aws/instance-ebs-bandwidth", "karpenter.k8s.aws/instance-network-bandwidth", "karpenter.k8s.aws/instance-gpu-name", "karpenter.k8s.aws/instance-gpu-manufacturer", "karpenter.k8s.aws/instance-gpu-count", "karpenter.k8s.aws/instance-gpu-memory", "karpenter.k8s.aws/instance-accelerator-name", "karpenter.k8s.aws/instance-accelerator-manufacturer", "karpenter.k8s.aws/instance-accelerator-count", "karpenter.k8s.aws/instance-capability-flex"] || !x.find("^([^/]+)").endsWith("karpenter.k8s.aws"))
228+
rule: self.all(x, x in ["karpenter.k8s.aws/instance-tenancy", "karpenter.k8s.aws/capacity-reservation-type", "karpenter.k8s.aws/capacity-reservation-id", "karpenter.k8s.aws/capacity-reservation-interruptible", "karpenter.k8s.aws/ec2nodeclass", "karpenter.k8s.aws/instance-encryption-in-transit-supported", "karpenter.k8s.aws/instance-category", "karpenter.k8s.aws/instance-hypervisor", "karpenter.k8s.aws/instance-family", "karpenter.k8s.aws/instance-generation", "karpenter.k8s.aws/instance-local-nvme", "karpenter.k8s.aws/instance-size", "karpenter.k8s.aws/instance-cpu", "karpenter.k8s.aws/instance-cpu-manufacturer", "karpenter.k8s.aws/instance-cpu-sustained-clock-speed-mhz", "karpenter.k8s.aws/instance-memory", "karpenter.k8s.aws/instance-ebs-bandwidth", "karpenter.k8s.aws/instance-network-bandwidth", "karpenter.k8s.aws/instance-gpu-name", "karpenter.k8s.aws/instance-gpu-manufacturer", "karpenter.k8s.aws/instance-gpu-count", "karpenter.k8s.aws/instance-gpu-memory", "karpenter.k8s.aws/instance-accelerator-name", "karpenter.k8s.aws/instance-accelerator-manufacturer", "karpenter.k8s.aws/instance-accelerator-count", "karpenter.k8s.aws/instance-capability-flex"] || !x.find("^([^/]+)").endsWith("karpenter.k8s.aws"))
229229
type: object
230230
spec:
231231
description: |-
@@ -294,7 +294,7 @@ spec:
294294
- message: label "kubernetes.io/hostname" is restricted
295295
rule: self != "kubernetes.io/hostname"
296296
- message: label domain "karpenter.k8s.aws" is restricted
297-
rule: self in ["karpenter.k8s.aws/instance-tenancy", "karpenter.k8s.aws/capacity-reservation-type", "karpenter.k8s.aws/capacity-reservation-id", "karpenter.k8s.aws/ec2nodeclass", "karpenter.k8s.aws/instance-encryption-in-transit-supported", "karpenter.k8s.aws/instance-category", "karpenter.k8s.aws/instance-hypervisor", "karpenter.k8s.aws/instance-family", "karpenter.k8s.aws/instance-generation", "karpenter.k8s.aws/instance-local-nvme", "karpenter.k8s.aws/instance-size", "karpenter.k8s.aws/instance-cpu", "karpenter.k8s.aws/instance-cpu-manufacturer", "karpenter.k8s.aws/instance-cpu-sustained-clock-speed-mhz", "karpenter.k8s.aws/instance-memory", "karpenter.k8s.aws/instance-ebs-bandwidth", "karpenter.k8s.aws/instance-network-bandwidth", "karpenter.k8s.aws/instance-gpu-name", "karpenter.k8s.aws/instance-gpu-manufacturer", "karpenter.k8s.aws/instance-gpu-count", "karpenter.k8s.aws/instance-gpu-memory", "karpenter.k8s.aws/instance-accelerator-name", "karpenter.k8s.aws/instance-accelerator-manufacturer", "karpenter.k8s.aws/instance-accelerator-count", "karpenter.k8s.aws/instance-capability-flex"] || !self.find("^([^/]+)").endsWith("karpenter.k8s.aws")
297+
rule: self in ["karpenter.k8s.aws/instance-tenancy", "karpenter.k8s.aws/capacity-reservation-type", "karpenter.k8s.aws/capacity-reservation-id", "karpenter.k8s.aws/capacity-reservation-interruptible", "karpenter.k8s.aws/ec2nodeclass", "karpenter.k8s.aws/instance-encryption-in-transit-supported", "karpenter.k8s.aws/instance-category", "karpenter.k8s.aws/instance-hypervisor", "karpenter.k8s.aws/instance-family", "karpenter.k8s.aws/instance-generation", "karpenter.k8s.aws/instance-local-nvme", "karpenter.k8s.aws/instance-size", "karpenter.k8s.aws/instance-cpu", "karpenter.k8s.aws/instance-cpu-manufacturer", "karpenter.k8s.aws/instance-cpu-sustained-clock-speed-mhz", "karpenter.k8s.aws/instance-memory", "karpenter.k8s.aws/instance-ebs-bandwidth", "karpenter.k8s.aws/instance-network-bandwidth", "karpenter.k8s.aws/instance-gpu-name", "karpenter.k8s.aws/instance-gpu-manufacturer", "karpenter.k8s.aws/instance-gpu-count", "karpenter.k8s.aws/instance-gpu-memory", "karpenter.k8s.aws/instance-accelerator-name", "karpenter.k8s.aws/instance-accelerator-manufacturer", "karpenter.k8s.aws/instance-accelerator-count", "karpenter.k8s.aws/instance-capability-flex"] || !self.find("^([^/]+)").endsWith("karpenter.k8s.aws")
298298
minValues:
299299
description: |-
300300
This field is ALPHA and can be dropped or replaced at any time

charts/karpenter/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ apiVersion: v2
22
name: karpenter
33
description: A Helm chart for Karpenter, an open-source node provisioning project built for Kubernetes.
44
type: application
5-
version: 1.9.0
6-
appVersion: 1.9.0
5+
version: 1.10.0
6+
appVersion: 1.10.0
77
keywords:
88
- cluster
99
- node

charts/karpenter/README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
A Helm chart for Karpenter, an open-source node provisioning project built for Kubernetes.
44

5-
![Version: 1.9.0](https://img.shields.io/badge/Version-1.9.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.9.0](https://img.shields.io/badge/AppVersion-1.9.0-informational?style=flat-square)
5+
![Version: 1.10.0](https://img.shields.io/badge/Version-1.10.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.10.0](https://img.shields.io/badge/AppVersion-1.10.0-informational?style=flat-square)
66

77
## Documentation
88

@@ -15,7 +15,7 @@ You can follow the detailed installation instruction in the [documentation](http
1515
```bash
1616
helm upgrade --install --namespace karpenter --create-namespace \
1717
karpenter oci://public.ecr.aws/karpenter/karpenter \
18-
--version 1.9.0 \
18+
--version 1.10.0 \
1919
--set "serviceAccount.annotations.eks\.amazonaws\.com/role-arn=${KARPENTER_IAM_ROLE_ARN}" \
2020
--set settings.clusterName=${CLUSTER_NAME} \
2121
--set settings.interruptionQueue=${CLUSTER_NAME} \
@@ -27,13 +27,13 @@ helm upgrade --install --namespace karpenter --create-namespace \
2727
As the OCI Helm chart is signed by [Cosign](https://github.com/sigstore/cosign) as part of the release process you can verify the chart before installing it by running the following command.
2828

2929
```shell
30-
cosign verify public.ecr.aws/karpenter/karpenter:1.9.0 \
30+
cosign verify public.ecr.aws/karpenter/karpenter:1.10.0 \
3131
--certificate-oidc-issuer=https://token.actions.githubusercontent.com \
3232
--certificate-identity-regexp='https://github\.com/aws/karpenter-provider-aws/\.github/workflows/release\.yaml@.+' \
3333
--certificate-github-workflow-repository=aws/karpenter-provider-aws \
3434
--certificate-github-workflow-name=Release \
35-
--certificate-github-workflow-ref=refs/tags/v1.9.0 \
36-
--annotations version=1.9.0
35+
--certificate-github-workflow-ref=refs/tags/v1.10.0 \
36+
--annotations version=1.10.0
3737
```
3838

3939
## Values
@@ -49,9 +49,9 @@ cosign verify public.ecr.aws/karpenter/karpenter:1.9.0 \
4949
| controller.envFrom | list | `[]` | |
5050
| controller.extraVolumeMounts | list | `[]` | Additional volumeMounts for the controller container. |
5151
| controller.healthProbe.port | int | `8081` | The container port to use for http health probe. |
52-
| controller.image.digest | string | `"sha256:30a506c64fbb1d8026cbfd9a1d662be3ab6e33a7999290a104085d78b49a69d7"` | SHA256 digest of the controller image. |
52+
| controller.image.digest | string | `"sha256:0c215133a37e0d8bc2515b75120d2fefa14be3f939aebc14020813cdc3c001a3"` | SHA256 digest of the controller image. |
5353
| controller.image.repository | string | `"public.ecr.aws/karpenter/controller"` | Repository path to the controller image. |
54-
| controller.image.tag | string | `"1.9.0"` | Tag of the controller image. |
54+
| controller.image.tag | string | `"1.10.0"` | Tag of the controller image. |
5555
| controller.metrics.port | int | `8080` | The container port to use for metrics. |
5656
| controller.resources | object | `{}` | Resources for the controller container. |
5757
| controller.securityContext.appArmorProfile | object | `{}` | AppArmor profile for the controller container. |

charts/karpenter/values.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,9 @@ controller:
126126
# -- Repository path to the controller image.
127127
repository: public.ecr.aws/karpenter/controller
128128
# -- Tag of the controller image.
129-
tag: 1.9.0
129+
tag: 1.10.0
130130
# -- SHA256 digest of the controller image.
131-
digest: sha256:30a506c64fbb1d8026cbfd9a1d662be3ab6e33a7999290a104085d78b49a69d7
131+
digest: sha256:0c215133a37e0d8bc2515b75120d2fefa14be3f939aebc14020813cdc3c001a3
132132
# -- Additional environment variables for the controller pod.
133133
env: []
134134
# - name: AWS_REGION

go.mod

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/aws/karpenter-provider-aws
22

3-
go 1.25.7
3+
go 1.26.1
44

55
// TODO: migrate tablewriter to v1.0.8
66
// https://github.com/olekukonko/tablewriter/blob/c64d84b3ecc64a18cfc8ba10cdd8c52cc13a7d23/MIGRATION.md?plain=1#L661
@@ -11,10 +11,10 @@ require (
1111
github.com/PuerkitoBio/goquery v1.11.0
1212
github.com/avast/retry-go v3.0.0+incompatible
1313
github.com/aws/amazon-vpc-resource-controller-k8s v1.7.18
14-
github.com/aws/aws-sdk-go-v2 v1.41.2
14+
github.com/aws/aws-sdk-go-v2 v1.41.4
1515
github.com/aws/aws-sdk-go-v2/config v1.32.10
1616
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.18
17-
github.com/aws/aws-sdk-go-v2/service/ec2 v1.290.1
17+
github.com/aws/aws-sdk-go-v2/service/ec2 v1.296.0
1818
github.com/aws/aws-sdk-go-v2/service/eks v1.80.1
1919
github.com/aws/aws-sdk-go-v2/service/fis v1.37.17
2020
github.com/aws/aws-sdk-go-v2/service/iam v1.53.3
@@ -24,7 +24,7 @@ require (
2424
github.com/aws/aws-sdk-go-v2/service/sts v1.41.7
2525
github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.35.17
2626
github.com/aws/karpenter-provider-aws/tools/kompat v0.0.0-20240410220356-6b868db24881
27-
github.com/aws/smithy-go v1.24.1
27+
github.com/aws/smithy-go v1.24.2
2828
github.com/awslabs/amazon-eks-ami/nodeadm v0.0.0-20240229193347-cfab22a10647
2929
github.com/awslabs/operatorpkg v0.0.0-20251222193911-34e9a1898737
3030
github.com/awslabs/operatorpkg/aws v0.0.0-20250414225955-b47cd315ffe9
@@ -43,27 +43,27 @@ require (
4343
go.uber.org/multierr v1.11.0
4444
go.uber.org/zap v1.27.1
4545
golang.org/x/sync v0.19.0
46-
k8s.io/api v0.35.0
46+
k8s.io/api v0.35.3
4747
k8s.io/apiextensions-apiserver v0.35.0
48-
k8s.io/apimachinery v0.35.0
49-
k8s.io/client-go v0.35.0
48+
k8s.io/apimachinery v0.35.3
49+
k8s.io/client-go v0.35.3
5050
k8s.io/klog/v2 v2.130.1
5151
k8s.io/utils v0.0.0-20251222233032-718f0e51e6d2
5252
sigs.k8s.io/controller-runtime v0.22.4
53-
sigs.k8s.io/karpenter v1.9.1-0.20260220232539-5e12af134257
53+
sigs.k8s.io/karpenter v1.10.0
5454
sigs.k8s.io/yaml v1.6.0
5555
)
5656

5757
require (
5858
github.com/Masterminds/semver/v3 v3.4.0 // indirect
5959
github.com/andybalholm/cascadia v1.3.3 // indirect
6060
github.com/aws/aws-sdk-go-v2/credentials v1.19.10 // indirect
61-
github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.18 // indirect
62-
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.18 // indirect
61+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.20 // indirect
62+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.20 // indirect
6363
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4 // indirect
64-
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.5 // indirect
64+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.7 // indirect
6565
github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.11.18 // indirect
66-
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.18 // indirect
66+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.20 // indirect
6767
github.com/aws/aws-sdk-go-v2/service/signin v1.0.6 // indirect
6868
github.com/aws/aws-sdk-go-v2/service/sso v1.30.11 // indirect
6969
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.35.15 // indirect
@@ -123,7 +123,7 @@ require (
123123
golang.org/x/oauth2 v0.34.0 // indirect
124124
golang.org/x/sys v0.40.0 // indirect
125125
golang.org/x/term v0.39.0 // indirect
126-
golang.org/x/text v0.33.0 // indirect
126+
golang.org/x/text v0.34.0 // indirect
127127
golang.org/x/time v0.14.0 // indirect
128128
golang.org/x/tools v0.41.0 // indirect
129129
gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect

0 commit comments

Comments
 (0)