buildspec-manifest.yml 1.2 KB

123456789101112131415161718192021222324252627282930
  1. version: 0.2
  2. env:
  3. variables:
  4. IMAGE_HOST: ''
  5. # IMAGE_NAME: weseek/growi
  6. IMAGE_NAME: weseek/growi-codebuild-test
  7. TAG_TMP: codebuildtmp
  8. TAGS: codebuildtest
  9. SECRETS_JSON_KEY: DOCKER_REGISTRY_PASSWORD # DOCKER_REGISTRY_PASSWORD or DOCKER_REGISTRY_ON_GITHUB_PASSWORD
  10. secrets-manager:
  11. DOCKER_REGISTRY_PASSWORD: growi/official-image-builder:$SECRETS_JSON_KEY
  12. phases:
  13. pre_build:
  14. commands:
  15. - echo ${DOCKER_REGISTRY_PASSWORD} | docker login --username wsmoogle --password-stdin ${IMAGE_HOST}
  16. build:
  17. commands:
  18. - export IMAGE="${IMAGE_HOST}${IMAGE_HOST:+/}${IMAGE_NAME}"
  19. - export TMP_TAG="${IMAGE}:${TAG_TMP}"
  20. - export TMP_TAG_AMD64="${IMAGE}:${TAG_TMP}-amd64"
  21. - export TMP_TAG_ARM64="${IMAGE}:${TAG_TMP}-arm64"
  22. - docker manifest create ${TMP_TAG} ${TMP_TAG_AMD64} ${TMP_TAG_ARM64}
  23. - bash ./packages/app/docker/codebuild/tagging.sh --source-image "${TMP_TAG}" --target-image "${IMAGE}" --tags "${TAGS}"
  24. post_build:
  25. commands:
  26. - docker image push --all-tags ${IMAGE}
  27. # - docker manifest push ${TMP_TAG}
  28. # remove
  29. # - docker run --rm -it lumir/remove-dockerhub-tag --user wsmoogle --pass ${DOCKER_REGISTRY_PASSWORD} ${TMP_TAG} ${TMP_TAG_AMD64} ${TMP_TAG_ARM64}