From f0ca11dadf5cc1138313de2dc9186302e4451823 Mon Sep 17 00:00:00 2001 From: Marcello Alexandre Date: Fri, 5 May 2023 08:13:36 -0300 Subject: [PATCH] Create build-rp-indexer-push-tag-india-ire.yaml --- .../build-rp-indexer-push-tag-india-ire.yaml | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 .github/workflows/.github/workflows/build-rp-indexer-push-tag-india-ire.yaml diff --git a/.github/workflows/.github/workflows/build-rp-indexer-push-tag-india-ire.yaml b/.github/workflows/.github/workflows/build-rp-indexer-push-tag-india-ire.yaml new file mode 100644 index 0000000..ef24d9b --- /dev/null +++ b/.github/workflows/.github/workflows/build-rp-indexer-push-tag-india-ire.yaml @@ -0,0 +1,84 @@ +name: Build Indexer in India and Ireland (Push Tag) + +on: + push: + tags: + - '*.*.*-staging' + - '*.*.*' + +jobs: + docker: + runs-on: ubuntu-latest + steps: + - name: Set variables + run: | + TAG="$( echo "${GITHUB_REF}" | cut -d'/' -f3 )" + if grep -qs -e '^.*.*-develop' <<< "${TAG}" ; then + echo "Found environment: DEVELOP - ${TAG}" + echo "ENVIRONMENT=develop" | tee -a "${GITHUB_ENV}" + exit 1 # stop action + elif grep -qs -e '^.*.*-staging' <<< "${TAG}" ; then + echo "Found environment: STAGING - ${TAG}" + echo "ENVIRONMENT=staging" | tee -a "${GITHUB_ENV}" + elif grep -qs -e '^.*.*' <<< "${TAG}" ; then + echo "No environment found, assuming: PRODUCTION - ${TAG}" + echo "ENVIRONMENT=production" | tee -a "${GITHUB_ENV}" + else + echo 'Not a valid tag. Skipping...' + exit 1 + fi + echo "TAG=$TAG" | tee -a "${GITHUB_ENV}" + VERSION="${TAG}" + echo "VERSION=${VERSION}" | tee -a "${GITHUB_ENV}" + echo "COMMIT_SHA=$GITHUB_SHA" | tee -a "${GITHUB_ENV}" + if [[ "${TAG}" == *"-india"* ]]; then + echo "IMAGE_TAG=${{ secrets.ECR_INDIA }}/indexer:${TAG}" | tee -a "${GITHUB_ENV}" + elif [[ "${TAG}" == *"-ire"* ]]; then + echo "IMAGE_TAG=${{ secrets.ECR_IRE }}/rp-indexer-rapidpro:${TAG}" | tee -a "${GITHUB_ENV}" + else + echo 'Not a valid tag. Skipping...' + exit 1 + fi + echo "IMAGE_SOURCE_URL=https://github.com/Ilhasoft/rp-indexer" | tee -a "${GITHUB_ENV}" + + + - name: Check out the repo + uses: actions/checkout@v3 + with: + ref: "${{env.GITHUB_SHA}}" + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Login to Registry India + if: ${{ contains(env.TAG, '-india') }} + uses: docker/login-action@v2 + with: + registry: ${{ secrets.ECR_INDIA }} + username: ${{ secrets.AWS_ACCESS_KEY_ID_INDIA }} + password: ${{ secrets.AWS_SECRET_ACCESS_KEY_INDIA }} + + - name: Login to Registry Ireland + if: ${{ contains(env.TAG, '-ire') }} + uses: docker/login-action@v2 + with: + registry: ${{ secrets.ECR_IRE }} + username: ${{ secrets.AWS_ACCESS_KEY_ID_IRE }} + password: ${{ secrets.AWS_SECRET_ACCESS_KEY_IRE }} + + - name: Build and push - Indexer Image + uses: docker/build-push-action@v3 + with: + context: . + labels: | + tag=${{env.TAG}} + commit=${{env.COMMIT_SHA}} + repository=${{env.IMAGE_SOURCE_URL}} + file: docker/Dockerfile + push: true + tags: "${{env.IMAGE_TAG}}" + no-cache: true +