buildx 976 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/bin/bash
  2. DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
  3. . "$DIR/.common.sh"
  4. echo -e "${BLUE}❯ ${CYAN}Building docker multiarch: ${YELLOW}${*}${RESET}"
  5. cd "${DIR}/.." || exit 1
  6. # determine commit if not already set
  7. if [ "$BUILD_COMMIT" == "" ]; then
  8. BUILD_COMMIT=$(git log -n 1 --format=%h)
  9. fi
  10. # Buildx Builder
  11. docker buildx create --name "${BUILDX_NAME:-npm}" || echo
  12. docker buildx use "${BUILDX_NAME:-npm}"
  13. docker buildx build \
  14. --build-arg BUILD_COMMIT="${BUILD_COMMIT:-notset}" \
  15. --build-arg BUILD_DATE="$(date '+%Y-%m-%d %T %Z')" \
  16. --build-arg BUILD_VERSION="${BUILD_VERSION:-dev}" \
  17. --build-arg NOW="$(date --rfc-3339=s)" \
  18. --build-arg SKIP_TESTS=1 \
  19. --build-arg GOPRIVATE="${GOPRIVATE:-}" \
  20. --build-arg GOPROXY="${GOPROXY:-}" \
  21. --platform linux/amd64,linux/arm64 \
  22. --progress plain \
  23. --pull \
  24. -f docker/Dockerfile \
  25. $@ \
  26. .
  27. rc=$?
  28. docker buildx rm "${BUILDX_NAME:-npm}"
  29. echo -e "${BLUE}❯ ${GREEN}Multiarch build Complete${RESET}"
  30. exit $rc