From 582fe2cbde1fed3858a583af0a66823ab163580c Mon Sep 17 00:00:00 2001 From: ChengHao Yang <17496418+tico88612@users.noreply.github.com> Date: Tue, 3 Dec 2024 00:40:40 +0800 Subject: [PATCH] Add Gateway API download information in kubespray-default Remove old variables in kubernetes-apps/gateway_api Signed-off-by: ChengHao Yang <17496418+tico88612@users.noreply.github.com> --- .../gateway_api/defaults/main.yml | 9 +++++++-- .../defaults/main/checksums.yml | 12 ++++++++++++ .../defaults/main/download.yml | 16 ++++++++++++++++ roles/kubespray-defaults/defaults/main/main.yml | 1 + 4 files changed, 36 insertions(+), 2 deletions(-) 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)"