11name : CI/CD Deploy
22
3+ run-name : Deploy springboot as backend image to ECR by ${{github.actor}}
4+
35on :
46 push :
57 branches : [ "main" ]
810 build :
911 runs-on : ubuntu-latest
1012 permissions :
13+ id-token : write
1114 contents : read
1215
1316 steps :
@@ -26,35 +29,20 @@ jobs:
2629 - name : Build with Gradle Wrapper
2730 run : ./gradlew build -x test
2831
29- - name : Login to DockerHub
30- uses : docker/login-action@v3
31- with :
32- username : ${{ secrets.DOCKER_USERNAME }}
33- password : ${{ secrets.DOCKER_TOKEN }}
32+ - name : Build image
33+ run : |
34+ docker build -t ${{ secrets.AWS_ORGANIZATION }}/backend .
35+ docker tag ${{ secrets.AWS_ORGANIZATION }}/backend:latest ${{ secrets.AWS_ECR_BACKEND_REPO }}:latest
3436
35- - name : Build and Push Docker Image
36- uses : docker/build-push-action@v5
37+ - name : Configure AWS credentials
38+ uses : aws-actions/configure-aws-credentials@v4
3739 with :
38- context : .
39- file : ./Dockerfile
40- push : true
41- tags : ${{ secrets.DOCKER_USERNAME }}/if-be:latest
42-
43- # dependency-submission:
44- # needs: build
45- # runs-on: ubuntu-latest
46- # permissions:
47- # contents: write
48- #
49- # steps:
50- # - name: Checkout code
51- # uses: actions/checkout@v4
52- #
53- # - name: Set up JDK 21
54- # uses: actions/setup-java@v4
55- # with:
56- # java-version: '21'
57- # distribution: 'temurin'
58- #
59- # - name: Submit Dependency Graph
60- # uses: gradle/actions/dependency-submission@v4
40+ role-to-assume : ${{ secrets.AWS_ROLE_TO_ASSUME }}
41+ aws-region : ${{ secrets.AWS_REGION }}
42+
43+ - name : Login to Amazon ECR
44+ uses : aws-actions/amazon-ecr-login@v2
45+
46+ - name : Push image to ECR
47+ run : |
48+ docker push ${{ secrets.AWS_ECR_BACKEND_REPO }}:latest
0 commit comments