buildkit-ref 828 B

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