Skip to content

Commit

Permalink
In-Place Node Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
lukasfrank committed Dec 2, 2024
1 parent dfa26a5 commit 89e794c
Show file tree
Hide file tree
Showing 19 changed files with 669 additions and 198 deletions.
1 change: 1 addition & 0 deletions .github/workflows/publish-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ on:
push:
branches:
- main
- feat/in-place-node-updates
tags:
- v*
paths-ignore:
Expand Down
4 changes: 2 additions & 2 deletions example/20-crd-druid.gardener.cloud_etcdcopybackupstasks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: etcdcopybackupstasks.druid.gardener.cloud
spec:
group: druid.gardener.cloud
Expand Down Expand Up @@ -159,7 +159,7 @@ spec:
format: date-time
type: string
message:
description: A human readable message indicating details about
description: A human-readable message indicating details about
the transition.
type: string
reason:
Expand Down
136 changes: 110 additions & 26 deletions example/20-crd-druid.gardener.cloud_etcds.yaml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: backupbuckets.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: backupentries.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
6 changes: 2 additions & 4 deletions example/20-crd-extensions.gardener.cloud_bastions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: bastions.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down Expand Up @@ -199,8 +199,6 @@ spec:
CamelCase names
- cloud provider specific error values must have names that comply with the
format foo.example.com/CamelCase.
---
The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
maxLength: 316
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
type: string
Expand All @@ -210,12 +208,12 @@ spec:
format: int32
type: integer
protocol:
default: TCP
description: |-
Protocol is the protocol of the service port of which status is recorded here
The supported values are: "TCP", "UDP", "SCTP"
type: string
required:
- error
- port
- protocol
type: object
Expand Down
2 changes: 1 addition & 1 deletion example/20-crd-extensions.gardener.cloud_clusters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: clusters.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: containerruntimes.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: controlplanes.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
2 changes: 1 addition & 1 deletion example/20-crd-extensions.gardener.cloud_dnsrecords.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: dnsrecords.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
2 changes: 1 addition & 1 deletion example/20-crd-extensions.gardener.cloud_extensions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: extensions.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: infrastructures.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down
4 changes: 2 additions & 2 deletions example/20-crd-extensions.gardener.cloud_networks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: networks.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down Expand Up @@ -72,7 +72,7 @@ spec:
ipFamilies:
description: |-
IPFamilies specifies the IP protocol versions to use for shoot networking. This field is immutable.
See https://github.com/gardener/gardener/blob/master/docs/usage/ipv6.md
See https://github.com/gardener/gardener/blob/master/docs/development/ipv6.md

Check warning on line 75 in example/20-crd-extensions.gardener.cloud_networks.yaml

View check run for this annotation

In Solidarity / Inclusive Language

Match Found

Please consider an alternative to `master`. Possibilities include: `primary`, `main`, `leader`, `active`, `writer`
Raw output
/master/gi
items:
description: IPFamily is a type for specifying an IP protocol version
to use in Gardener clusters.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.14.0
controller-gen.kubebuilder.io/version: v0.16.5
name: operatingsystemconfigs.extensions.gardener.cloud
spec:
group: extensions.gardener.cloud
Expand Down Expand Up @@ -68,6 +68,19 @@ spec:
x-kubernetes-validations:
- message: Value is immutable
rule: self == oldSelf
credentialsRotation:
description: CredentialsRotation is a structure containing information
about the last initiation time of the CA and ServiceAccountKey rotation.
properties:
caRotationLastInitiationTime:
description: CARotationLastInitiationTime is the time when the
last CA rotation was initiated.
type: string
serviceAccountKeyRotationLastInitiationTime:
description: ServiceAccountKeyRotationLastInitiationTime is the
time when the last ServiceAccountKey rotation was initiated.
type: string
type: object
criConfig:
description: CRI config is a structure contains configurations of
the CRI library
Expand Down Expand Up @@ -262,6 +275,16 @@ spec:
- path
type: object
type: array
kubeletConfigHash:
description: KubeletConfigHash is the hash calculated on fields relevant
for in-place update of the Kubelet configuration.
type: string
kubeletVersion:
description: KubeletVersion is the version of the Kubelet.
type: string
osVersion:
description: OSVersion is the version of the OperatingSystem.
type: string
providerConfig:
description: ProviderConfig is the provider specific configuration.
type: object
Expand Down Expand Up @@ -524,6 +547,21 @@ spec:
- name
type: object
type: array
inPlaceUpdateConfig:
description: InPlaceUpdateConfig contains the configuration for in-place
updates.
properties:
updateScriptArgs:
description: UpdateScriptArgs is the arguments to be passed to
the update script for in-place updates.
items:
type: string
type: array
updateScriptPath:
description: UpdateScriptPath is the path of the update script
to be triggered in case of in-place updates.
type: string
type: object
lastError:
description: LastError holds information about the last occurred error
during an operation.
Expand Down
Loading

0 comments on commit 89e794c

Please sign in to comment.