github.com/argoproj/argo-cd/v3@v3.2.1/hack/update-kubernetes-version.sh (about)

     1  #!/usr/bin/env bash
     2  set -euo pipefail
     3  
     4  if [ -z "${1:-}" ]; then
     5    echo "Example usage: ./hack/update-kubernetes-version.sh v1.26.11"
     6    exit 1
     7  fi
     8  
     9  function fetch_mods() {
    10    curl -sS "https://raw.githubusercontent.com/kubernetes/kubernetes/v${VERSION}/go.mod" |
    11      sed -n 's|.*k8s.io/\(.*\) => ./staging/src/k8s.io/.*|k8s.io/\1|p'
    12  }
    13  
    14  VERSION=${1#"v"}
    15  readarray -t MODS < <(fetch_mods)
    16  for MOD in "${MODS[@]}"; do
    17    echo "Updating $MOD..." >&2
    18    V=$(
    19      go mod download -json "${MOD}@kubernetes-${VERSION}" |
    20        sed -n 's|.*"Version": "\(.*\)".*|\1|p'
    21    )
    22    go mod edit "-replace=${MOD}=${MOD}@${V}"
    23  done
    24  go get "k8s.io/kubernetes@v${VERSION}"
    25  go mod tidy