diff --git a/roles/kubernetes-apps/gateway_api/defaults/main.yml b/roles/kubernetes-apps/gateway_api/defaults/main.yml index e04500887..e861991b6 100644 --- a/roles/kubernetes-apps/gateway_api/defaults/main.yml +++ b/roles/kubernetes-apps/gateway_api/defaults/main.yml @@ -1,4 +1,9 @@ --- gateway_api_enabled: false -gateway_api_version: 1.1.0 -gateway_api_experimental_channel: false +gateway_api_version: 1.2.1 + +# `gateway_api_channel` default is "standard". +# "standard" release channel includes all resources that have graduated to GA or beta, including GatewayClass, Gateway, HTTPRoute, and ReferenceGrant. +# "experimental" for some experimental resources and fields. Note that future releases of the API could include breaking changes to experimental resources and fields. For example, any experimental resource or field could be removed in a future release. +# https://gateway-api.sigs.k8s.io/guides/#install-experimental-channel +gateway_api_channel: "standard" diff --git a/roles/kubespray-defaults/defaults/main/checksums.yml b/roles/kubespray-defaults/defaults/main/checksums.yml index 419f85084..733fd67b8 100644 --- a/roles/kubespray-defaults/defaults/main/checksums.yml +++ b/roles/kubespray-defaults/defaults/main/checksums.yml @@ -1169,3 +1169,15 @@ yq_checksums: 4.40.5: sha256:a1df9d2b872fbb30583526bf4f37f737dc1913b28606dfc1dafeaf56a8862b3d 4.40.4: sha256:c67379085a44558825a60a8af3b59b400852b168356070829bc0f45c70553f45 4.40.3: sha256:2fe818a0b141913a41548e0e727267479d0f755221c73f9e304788c8e9139a45 +gateway_api_standard_crds_checksums: + no_arch: + 1.2.1: sha256:97598bf6ab3b33b9b5c5432bdd24de091e4e9c3aa0575ebb0710a2a19cd64d64 + 1.2.0: sha256:38ed055bb25dc580c0366899c0bed9b9e92dfcd1c180a569133f3946026cf102 + 1.1.0: sha256:c411805475d430a34242623a8e17153a7c40e946497bfd494e558b0d1a8858b3 + 1.0.0: sha256:23e4e1095c72a0587474f7fb3f85c319cdec77a083ab91237ffbdec1f1834d2a +gateway_api_experimental_crds_checksums: + no_arch: + 1.2.1: sha256:d3aa6723a3306770cffb601ee22af3d35da43acfa1ca547fc0d3bce08dad66e7 + 1.2.0: sha256:4369188e63b9ab5a35b5a83032c94d871159dece086b908b6ea18ea321ca06a9 + 1.1.0: sha256:10f322744a005d4e73e2b067e95fecd4cfec619dc7564930b488c296bfa3bec1 + 1.0.0: sha256:6c601dced7872a940d76fa667ae126ba718cb4c6db970d0bab49128ecc1192a3 diff --git a/roles/kubespray-defaults/defaults/main/download.yml b/roles/kubespray-defaults/defaults/main/download.yml index 8a9b2d197..7ebcb5510 100644 --- a/roles/kubespray-defaults/defaults/main/download.yml +++ b/roles/kubespray-defaults/defaults/main/download.yml @@ -161,6 +161,9 @@ scheduler_plugins_version: "{{ scheduler_plugins_supported_versions[kube_major_v yq_version: "{{ (yq_checksums['amd64'] | dict2items)[0].key }}" +gateway_api_version: "1.2.1" +gateway_api_channel: "standard" + github_url: https://github.com dl_k8s_io_url: https://dl.k8s.io storage_googleapis_url: https://storage.googleapis.com @@ -190,6 +193,7 @@ containerd_download_url: "{{ github_url }}/containerd/containerd/releases/downlo cri_dockerd_download_url: "{{ github_url }}/Mirantis/cri-dockerd/releases/download/v{{ cri_dockerd_version }}/cri-dockerd-{{ cri_dockerd_version }}.{{ image_arch }}.tgz" skopeo_download_url: "{{ github_url }}/lework/skopeo-binary/releases/download/v{{ skopeo_version }}/skopeo-linux-{{ image_arch }}" yq_download_url: "{{ github_url }}/mikefarah/yq/releases/download/v{{ yq_version }}/yq_linux_{{ image_arch }}" +gateway_api_crds_download_url: "{{ github_url }}/kubernetes-sigs/gateway-api/releases/download/v{{ gateway_api_version }}/{{ gateway_api_channel }}-install.yaml" etcd_binary_checksum: "{{ etcd_binary_checksums[image_arch][etcd_version] }}" cni_binary_checksum: "{{ cni_binary_checksums[image_arch][cni_version] }}" @@ -995,6 +999,18 @@ downloads: groups: - kube_node + gateway_api_crds: + enabled: "{{ gateway_api_enabled }}" + file: true + version: "{{ gateway_api_version }}" + dest: "{{ local_release_dir }}/gateway-api-{{ gateway_api_channel }}-install.yaml" + checksum: "{{ lookup('vars', 'gateway_api_' + gateway_api_channel + '_crds_checksums').no_arch[gateway_api_version] }}" + url: "{{ gateway_api_crds_download_url }}" + owner: "root" + mode: "0755" + groups: + - kube_control_plane + csi_attacher: enabled: "{{ cinder_csi_enabled or aws_ebs_csi_enabled }}" container: true diff --git a/roles/kubespray-defaults/defaults/main/main.yml b/roles/kubespray-defaults/defaults/main/main.yml index 4aa478756..1e6d18915 100644 --- a/roles/kubespray-defaults/defaults/main/main.yml +++ b/roles/kubespray-defaults/defaults/main/main.yml @@ -442,6 +442,7 @@ expand_persistent_volumes: false metallb_enabled: false metallb_speaker_enabled: "{{ metallb_enabled }}" argocd_enabled: false +gateway_api_enabled: false ## When OpenStack is used, Cinder version can be explicitly specified if autodetection fails (Fixed in 1.9: https://github.com/kubernetes/kubernetes/issues/50461) # openstack_blockstorage_version: "v1/v2/auto (default)"