Browse Source

Merge pull request #11763 from tico88612/feat/gateway-api-v1.2.1

Refactor Gateway API installation process and bump Gateway API v1.2.1
pull/12128/head
Kubernetes Prow Robot 3 weeks ago
committed by GitHub
parent
commit
4ad9f9b535
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
8 changed files with 45 additions and 31807 deletions
  1. 1
      inventory/sample/group_vars/k8s_cluster/addons.yml
  2. 9
      roles/kubernetes-apps/gateway_api/defaults/main.yml
  3. 18
      roles/kubernetes-apps/gateway_api/tasks/main.yml
  4. 18317
      roles/kubernetes-apps/gateway_api/templates/experimental-install.yaml.j2
  5. 13478
      roles/kubernetes-apps/gateway_api/templates/standard-install.yaml.j2
  6. 12
      roles/kubespray-defaults/defaults/main/checksums.yml
  7. 16
      roles/kubespray-defaults/defaults/main/download.yml
  8. 1
      roles/kubespray-defaults/defaults/main/main.yml

1
inventory/sample/group_vars/k8s_cluster/addons.yml

@ -67,7 +67,6 @@ local_volume_provisioner_enabled: false
# Gateway API CRDs
gateway_api_enabled: false
# gateway_api_experimental_channel: false
# Nginx ingress controller deployment
ingress_nginx_enabled: false

9
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"

18
roles/kubernetes-apps/gateway_api/tasks/main.yml

@ -1,4 +1,9 @@
---
- name: Gateway API | Download YAML
include_tasks: "../../../download/tasks/download_file.yml"
vars:
download: "{{ download_defaults | combine(downloads.gateway_api_crds) }}"
- name: Gateway API | Create addon dir
file:
path: "{{ kube_config_dir }}/addons/gateway_api"
@ -9,17 +14,12 @@
when:
- inventory_hostname == groups['kube_control_plane'][0]
- name: Gateway API | Set channel
set_fact:
gateway_api_channel: "{{ 'experimental' if gateway_api_experimental_channel else 'standard' }}"
when:
- "inventory_hostname == groups['kube_control_plane'][0]"
- name: Gateway API | Copy Gateway API manifests to remote
template:
src: "{{ gateway_api_channel }}-install.yaml.j2"
- name: Gateway API | Copy YAML from download dir
copy:
src: "{{ local_release_dir }}/gateway-api-{{ gateway_api_channel }}-install.yaml"
dest: "{{ kube_config_dir }}/addons/gateway_api/{{ gateway_api_channel }}-install.yaml"
mode: "0644"
remote_src: true
when:
- "inventory_hostname == groups['kube_control_plane'][0]"

18317
roles/kubernetes-apps/gateway_api/templates/experimental-install.yaml.j2
File diff suppressed because it is too large
View File

13478
roles/kubernetes-apps/gateway_api/templates/standard-install.yaml.j2
File diff suppressed because it is too large
View File

12
roles/kubespray-defaults/defaults/main/checksums.yml

@ -1170,3 +1170,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

16
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] }}"
@ -994,6 +998,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

1
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)"

Loading…
Cancel
Save