Skip to content

fix: recruit 업데이트시, limitation값 반영되지 않는 오류 수정 #151

fix: recruit 업데이트시, limitation값 반영되지 않는 오류 수정

fix: recruit 업데이트시, limitation값 반영되지 않는 오류 수정 #151

Workflow file for this run

name: dev CI&CD to Cloud
on:
push:
branches:
- dev
env:
AWS_REGION: ${{ secrets.AWS_REGION }}
S3_BUCKET_NAME: ${{ secrets.S3_BUCKET_NAME }}
CODE_DEPLOY_APPLICATION_NAME: ${{ secrets.CODE_DEPLOY_APPLICATION_NAME }}
CODE_DEPLOY_DEPLOYMENT_GROUP_NAME: ${{secrets.CODE_DEPLOY_DEPLOYMENT_GROUP_NAME }}
APPLICATION_DIR: src/main/resources
APPLICATION_DEV: ${{ secrets.APPLICATION_DEV }}
DATA_SQL: ${{ secrets.DATA_SQL }}
DATA_SQL_FILENAME: data.sql
permissions:
id-token: write
contents: write
jobs:
build:
name: CI & CD
runs-on: ubuntu-latest
steps:
# (0) 시간 출력
- name: Get Current Time
uses: 1466587594/get-current-time@v2
id: current-time
with:
format: YYYY-MM-DDTHH:mm:ss
timezone: 'Asia/Seoul'
- name: Print Current Time
run: echo "Current Time=${{steps.current-time.outputs.formattedTime}}" # current-time 에서 지정한 포맷대로 현재 시간 출력
shell: bash
# (1) 기본 체크아웃
- name: Checkout
uses: actions/checkout@v3
# (2) JDK 11 세팅
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: 11
distribution: 'temurin'
# (3) 환경변수 파일 생성
- name: Copy properties
run: echo $APPLICATION_DEV | base64 --decode > $APPLICATION_DIR/application-dev.yml &&
echo $DATA_SQL | base64 --decode > $APPLICATION_DIR/$DATA_SQL_FILENAME
# (4) gradlew 권한 설정
- name: Grant execute permission for gradlew
run: chmod +x gradlew
# (5) Gradle build (Test 제외)
- name: Build with Gradle
uses: gradle/gradle-build-action@0d13054264b0bb894ded474f08ebb30921341cee
with:
arguments: clean build -x test
# (6) 전송할 파일 디렉토리 생성
- name: Make file directory for transfer
run: mkdir deploy &&
cp build/libs/*.jar deploy/ &&
cp appspec.yml deploy/ &&
cp scripts/deploy.sh deploy/
# (7) 압축
- name: Make zip
run: zip -r -qq -j SSAF-SOUND-APP.zip deploy
# (8) AWS 인증 (IAM 사용자 Access Key, Secret Key 활용)
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ env.AWS_REGION }}
# (9) 빌드 결과물을 카피 방식으로 S3 버킷에 업로드
- name: Upload to AWS S3
run: aws s3 cp --region $AWS_REGION SSAF-SOUND-APP.zip s3://$S3_BUCKET_NAME/SSAF-SOUND-APP.zip
# (10) S3 버킷에 있는 파일을 대상으로 CodeDeploy 실행
- name: Deploy to AWS EC2 from S3
run: |
aws deploy create-deployment \
--application-name ${{ env.CODE_DEPLOY_APPLICATION_NAME }} \
--deployment-config-name CodeDeployDefault.AllAtOnce \
--file-exists-behavior OVERWRITE \
--deployment-group-name ${{ env.CODE_DEPLOY_DEPLOYMENT_GROUP_NAME }} \
--s3-location bucket=$S3_BUCKET_NAME,key=SSAF-SOUND-APP.zip,bundleType=zip