github.com/cilium/cilium@v1.16.2/test/controlplane/k8s_versions.sh (about)

     1  #!/usr/bin/env bash
     2  
     3  function get_local_dir() {
     4     cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd
     5  }
     6  
     7  versions=($(cat < "$(get_local_dir)/k8s_versions.txt" | grep -Eo '^[0-9]\.[0-9]{2}' | tr "\n" " "))
     8  k8s_patch_versions=($(cat < "$(get_local_dir)/k8s_versions.txt" | tr "\n" " "))
     9  
    10  cilium_version=${cilium_version:-$(cat < "$(get_local_dir)/../../stable.txt")}
    11  cilium_container_repo=${cilium_container_repo:-"quay.io/cilium"}
    12  cilium_container_image=${cilium_container_image:-"cilium"}
    13  cilium_operator_container_image=${cilium_operator_container_image:-"operator-generic"}
    14  
    15  
    16  function update-kind-config() {
    17      i=0
    18      for version in ${versions[*]}; do
    19         while read file;do
    20           local file_sha=$(md5sum "${file}")
    21           sed -i "s+kindest/node:v${version}.*+kindest/node:v${k8s_patch_versions[${i}]}+" "${file}"
    22           if [ "${file_sha}" != "$(md5sum "${file}")" ]; then
    23              find "$(dirname $(dirname "${file}"))" -type d -regextype posix-extended -regex ".*/v${version}" | xargs rm -r 2>/dev/null
    24           fi
    25         done <<<$(find . -type f -regextype posix-extended -regex ".*/kind-config-${version}.yaml")
    26         i=$(( i + 1 ))
    27      done
    28  }
    29  
    30  function pre-pull-images() {
    31      docker pull "${cilium_container_repo}/${cilium_container_image}:${cilium_version}"
    32      docker pull "${cilium_container_repo}/${cilium_operator_container_image}:${cilium_version}"
    33  }
    34  
    35  for arg in "$@"
    36  do
    37      case $arg in
    38          "--update-kind-config" )
    39              update-kind-config
    40          ;;
    41          "--pre-pull-images" )
    42              pre-pull-images
    43          ;;
    44     esac
    45  done