github.com/Heebron/moby@v0.0.0-20221111184709-6eab4f55faf7/hack/buildkit-ref (about)

     1  #!/usr/bin/env bash
     2  # This script returns the current BuildKit ref being used in moby.
     3  
     4  : "${BUILDKIT_REPO=moby/buildkit}"
     5  : "${BUILDKIT_REF=}"
     6  
     7  if [ -n "$BUILDKIT_REF" ]; then
     8  	echo "$BUILDKIT_REF"
     9  	exit 0
    10  fi
    11  
    12  # prepare go mod
    13  ./hack/go-mod-prepare.sh
    14  
    15  # get buildkit version from vendor.mod
    16  BUILDKIT_REF=$(GO111MODULE=on go list -mod=mod -modfile=vendor.mod -u -m -f '{{.Version}}' "github.com/${BUILDKIT_REPO}")
    17  if [[ "${BUILDKIT_REF}" == *-*-* ]]; then
    18  	# if pseudo-version, figure out just the uncommon sha (https://github.com/golang/go/issues/34745)
    19  	BUILDKIT_REF=$(echo "${BUILDKIT_REF}" | awk -F"-" '{print $NF}' | awk 'BEGIN{FIELDWIDTHS="7"} {print $1}')
    20  	# use github api to return full sha to be able to use it as ref
    21  	BUILDKIT_REF=$(curl -s "https://api.github.com/repos/${BUILDKIT_REPO}/commits/${BUILDKIT_REF}" | jq -r .sha)
    22  fi
    23  
    24  echo "$BUILDKIT_REF"