Skip to content

Swap prod and staging (#9) #2

Swap prod and staging (#9)

Swap prod and staging (#9) #2

Workflow file for this run

name: Deploy to ECR
on:
push:
tags:
- '*'
permissions:
id-token: write # This is required for requesting the JWT
contents: read # This is required for actions/checkout
jobs:
build:
name: Build and Push Docker Images
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Build Image
run: |
docker build -t temp:latest -f Dockerfile .
- name: Configure AWS credentials Staging
uses: aws-actions/configure-aws-credentials@v1.7.0
with:
role-to-assume: arn:aws:iam::992382665735:role/GitHub2ECR # check terraform output
role-session-name: GitHub_to_AWS_via_FederatedOIDC
aws-region: us-east-1
- name: Login to Amazon ECR Staging
id: login-ecr-management-staging
uses: aws-actions/amazon-ecr-login@v2
- name: Tag and Push Image to Amazon ECR Staging
env:
ECR_REGISTRY: ${{ steps.login-ecr-management-staging.outputs.registry }}
ECR_REPOSITORY: ml-repository
IMAGE_TAG: scholarag-${{ github.ref_name }}
run: |
docker tag temp:latest $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
docker tag $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG temp:latest
- name: Configure AWS credentials Prod
uses: aws-actions/configure-aws-credentials@v1.7.0
with:
role-to-assume: arn:aws:iam::671250183987:role/GitHub2ECR # check terraform output
role-session-name: GitHub_to_AWS_via_FederatedOIDC
aws-region: us-east-1
- name: Login to Amazon ECR Prod
id: login-ecr-management-prod
uses: aws-actions/amazon-ecr-login@v2
- name: Tag and Push Image to Amazon ECR Prod
env:
ECR_REGISTRY: ${{ steps.login-ecr-management-prod.outputs.registry }}
ECR_REPOSITORY: ml-repository
IMAGE_TAG: scholarag-${{ github.ref_name }}
run: |
docker tag temp:latest $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG