build.sh 675 B

12345678910111213141516171819202122232425262728
  1. #!/usr/bin/env bash
  2. set -euo pipefail
  3. TAG="$(git rev-parse --short HEAD)"
  4. NAME="docker.dezendorf.net/whisparr"
  5. YAML="../../dezendorf/homelab/k3s/media/whisparr.yaml"
  6. PLATFORMS="${PLATFORMS:-linux/amd64,linux/arm64}"
  7. if ! docker buildx version >/dev/null 2>&1; then
  8. echo "docker buildx is required for multi-arch builds" >&2
  9. exit 1
  10. fi
  11. docker buildx build \
  12. --platform "${PLATFORMS}" \
  13. --tag "${NAME}:${TAG}" \
  14. --tag "${NAME}:latest" \
  15. --push \
  16. -f Dockerfile \
  17. .
  18. echo "Built and pushed multi-arch images:"
  19. echo " ${NAME}:${TAG}"
  20. echo " ${NAME}:latest"
  21. echo " platforms=${PLATFORMS}"
  22. sed -i -e "s#${NAME}:.*#${NAME}:${TAG}#g" "${YAML}"
  23. git add "${YAML}"