Skip to content

Commit 4dc17b4

Browse files
authored
Merge pull request #16 from GTable/feature/#3-ci-cd-pipeline
Feature/#3 ci cd pipeline
2 parents 85ddad9 + d6bae86 commit 4dc17b4

2 files changed

Lines changed: 55 additions & 52 deletions

File tree

.github/workflows/deploy-admin.yml

Lines changed: 54 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ name: Dev Admin CI/CD
22

33
on:
44
push:
5-
branches:
6-
- develop
5+
branches:
6+
- develop
77
paths:
88
- 'application-admin/**'
99
- 'common/**'
@@ -21,60 +21,62 @@ env:
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+
2525
jobs:
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

application-admin/src/main/java/com/nowait/applicationadmin/ApiAdminApplication.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,4 @@ public static void main(String[] args) {
3333
org.springframework.boot.SpringApplication.run(ApiAdminApplication.class, args);
3434
}
3535
}
36+

0 commit comments

Comments
 (0)