cloudbuild.yaml 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. steps:
  2. - id: 'docker_amd64'
  3. name: 'docker'
  4. entrypoint: 'sh'
  5. args:
  6. - '-c'
  7. - |
  8. docker build \
  9. -t darthsim/imgproxy:$TAG_NAME-amd64 \
  10. -f docker/Dockerfile \
  11. --platform=linux/amd64 \
  12. .
  13. env:
  14. - DOCKER_BUILDKIT=1
  15. waitFor: ["-"]
  16. - id: 'docker_arm64'
  17. name: 'docker'
  18. entrypoint: 'sh'
  19. args:
  20. - '-c'
  21. - |
  22. docker run --rm --privileged multiarch/qemu-user-static --reset -p yes \
  23. && docker build \
  24. -t darthsim/imgproxy:$TAG_NAME-arm64 \
  25. -f docker/Dockerfile \
  26. --platform=linux/arm64/v8 \
  27. .
  28. env:
  29. - DOCKER_BUILDKIT=1
  30. waitFor: ["-"]
  31. - id: 'push'
  32. name: 'docker'
  33. entrypoint: 'sh'
  34. args:
  35. - '-c'
  36. - |
  37. apk add --no-cache bash \
  38. && docker login -u darthsim -p $$DOCKER_HUB_TOKEN \
  39. && docker/push-images.sh ${TAG_NAME}
  40. secretEnv: ['DOCKER_HUB_TOKEN']
  41. waitFor: ['docker_amd64', 'docker_arm64']
  42. availableSecrets:
  43. secretManager:
  44. - versionName: projects/${PROJECT_ID}/secrets/DOCKER_HUB_TOKEN/versions/latest
  45. env: DOCKER_HUB_TOKEN
  46. options:
  47. machineType: 'N1_HIGHCPU_8'
  48. logging: CLOUD_LOGGING_ONLY
  49. dynamic_substitutions: true
  50. timeout: 1200s