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