From 7e36946acfefca58d28219c99585fe46fd92f471 Mon Sep 17 00:00:00 2001 From: downfa11 <124482256+downfa11@users.noreply.github.com> Date: Fri, 13 Dec 2024 14:27:04 +0900 Subject: [PATCH] chore: ECR Deployment --- .github/workflows/Deployment.yml | 45 ++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/Deployment.yml diff --git a/.github/workflows/Deployment.yml b/.github/workflows/Deployment.yml new file mode 100644 index 0000000..eee655d --- /dev/null +++ b/.github/workflows/Deployment.yml @@ -0,0 +1,45 @@ +name: Solve-Deployment + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Grant execute permission for gradlew + run: chmod +x ./gradlew + + - name: Run tests + run: ./gradlew test + + - name: Build the application + run: ./gradlew build + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 # More information on this action can be found below in the 'AWS Credentials' section + with: + aws-access-key-id: ${{secrets.AWS_ACCESS_KEY_ID}} + aws-secret-access-key: ${{secrets.AWS_SECRET_KEY}} + aws-region: ap-northeast-2 + + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v2 + + - name: Build, tag, and push docker image to Amazon ECR + env: + REGISTRY: ${{ steps.login-ecr.outputs.registry }} + REPOSITORY: downfa11/solve-service + IMAGE_TAG: ${{ github.sha }} + run: | + envsubst < Dockerfile.template | docker build -t $REGISTRY/$REPOSITORY:$IMAGE_TAG -f - . + docker push $REGISTRY/$REPOSITORY:$IMAGE_TAG