@@ -2,8 +2,8 @@ name: Dev Admin CI/CD
22
33on :
44 push :
5- branches :
6- - develop
5+ branches :
6+ - develop
77 paths :
88 - ' application-admin/**'
99 - ' common/**'
2121 AWS_S3_BUCKET : nowait-deploy-github-actions
2222 AWS_CODE_DEPLOY_APPLICATION : nowaiting
2323 AWS_CODE_DEPLOY_GROUP : nowaiting-deploy-dev-admin
24-
24+
2525jobs :
2626 build-with-gradle :
2727 runs-on : ubuntu-latest
2828 steps :
29- - name : Checkout
30- uses : actions/checkout@v3
31-
32- - name : JDK 17 설치
33- uses : actions/setup-java@v3
34- with :
35- java-version : ' 17'
36- distribution : ' zulu'
37-
38- - name : gradlew에 실행 권한 부여
39- run : chmod +x ./gradlew
29+ - name : Checkout
30+ uses : actions/checkout@v3
31+
32+ - name : Set up JDK 17
33+ uses : actions/setup-java@v3
34+ with :
35+ java-version : ' 17'
36+ distribution : ' zulu'
37+
38+ - name : Make gradlew executable
39+ run : chmod +x ./gradlew
40+
41+ - name : Set YML
42+ run : |
43+ mkdir -p application-admin/src/main/resources
44+ echo "${{ secrets.APPLICATION_DEV_ADMIN_YML }}" \
45+ | base64 --decode \
46+ > application-admin/src/main/resources/application-admin.yml
47+ find application-admin/src
48+
49+ - name : Build Admin JAR
50+ run : ./gradlew clean :application-admin:bootJar -x test
51+
52+ - name : Prepare deployment package
53+ run : |
54+ rm -rf deploy && mkdir deploy
55+ cp application-admin/build/libs/application-admin-*.jar deploy/application-admin.jar
56+ cp scripts/start-admin.sh scripts/stop-admin.sh appspec-admin.yml deploy/
57+ cd deploy
58+ zip -r ../${{ env.PROJECT_NAME }}-${{ env.DIVISION }}-${{ github.sha }}.zip .
59+ cd ..
4060
41- - name : Set YML
42- run : |
43- mkdir -p application-admin/src/main/resources
44- echo "${{ secrets.APPLICATION_DEV_ADMIN_YML }}" | base64 --decode > application-admin/src/main/resources/application-admin.yml
45- find application-admin/src
46-
47- - name : 프로젝트 빌드
48- run : ./gradlew clean :application-admin:bootJar -x test
61+ - name : Configure AWS credentials
62+ uses : aws-actions/configure-aws-credentials@v1
63+ with :
64+ aws-region : ${{ env.AWS_REGION }}
65+ aws-access-key-id : ${{ secrets.DEVSERVER_CICD_ACCESS_KEY }}
66+ aws-secret-access-key : ${{ secrets.DEVSERVER_CICD_SECRET_KEY }}
4967
50- - name : Prepare deployment package
51- run : |
52- rm -rf deploy && mkdir deploy
53- cp application-admin/build/libs/application-admin-*.jar deploy/application-admin.jar
54- cp scripts/start-admin.sh scripts/stop-admin.sh appspec-admin.yml deploy/
55- cd deploy
56- zip -r ../${{ env.PROJECT_NAME }}-${{ env.DIVISION }}-${{ github.sha }}.zip .
57- cd ..
58-
59- - name : AWS credential 설정
60- uses : aws-actions/configure-aws-credentials@v1
61- with :
62- aws-region : ${{ env.AWS_REGION }}
63- aws-access-key-id : ${{ secrets.DEVSERVER_CICD_ACCESS_KEY }}
64- aws-secret-access-key : ${{ secrets.DEVSERVER_CICD_SECRET_KEY }}
65-
66- - name : S3에 업로드
67- run : |
68- aws deploy push \
69- --application-name "${{ env.AWS_CODE_DEPLOY_APPLICATION }}" \
70- --ignore-hidden-files \
71- --s3-location "s3://${{ env.AWS_S3_BUCKET }}/${{ env.PROJECT_NAME }}/${{ env.DIVISION }}/${{ github.sha }}.zip" \
72- --source "${{ env.PROJECT_NAME }}-${{ env.DIVISION }}-${{ github.sha }}.zip"
68+ - name : Upload to S3
69+ run : |
70+ aws deploy push \
71+ --application-name "${{ env.AWS_CODE_DEPLOY_APPLICATION }}" \
72+ --ignore-hidden-files \
73+ --s3-location "s3://${{ env.AWS_S3_BUCKET }}/${{ env.PROJECT_NAME }}/${{ env.DIVISION }}/${{ github.sha }}.zip" \
74+ --source deploy
7375
74- - name : EC2에 배포
75- run : |
76- aws deploy create-deployment \
77- --application-name ${{ env.AWS_CODE_DEPLOY_APPLICATION }} \
78- --deployment-config-name CodeDeployDefault.AllAtOnce \
79- --deployment-group-name ${{ env.AWS_CODE_DEPLOY_GROUP }} \
80- --s3-location bucket=${{ env.AWS_S3_BUCKET }},key=${{ env.PROJECT_NAME }}/${{ env.DIVISION }}/${{ github.sha }}.zip,bundleType=zip
76+ - name : Create CodeDeploy deployment
77+ run : |
78+ aws deploy create-deployment \
79+ --application-name ${{ env.AWS_CODE_DEPLOY_APPLICATION }} \
80+ --deployment-config-name CodeDeployDefault.AllAtOnce \
81+ --deployment-group-name ${{ env.AWS_CODE_DEPLOY_GROUP }} \
82+ --s3-location bucket=${{ env.AWS_S3_BUCKET }},key=${{ env.PROJECT_NAME }}/${{ env.DIVISION }}/${{ github.sha }}.zip,bundleType=zip
0 commit comments