From 0a63773300be6d26f8dcd9e86b3a266664da02ea Mon Sep 17 00:00:00 2001 From: Jaehyun Ahn <91878695+uwoobeat@users.noreply.github.com> Date: Tue, 5 Mar 2024 00:07:42 +0900 Subject: [PATCH 1/3] =?UTF-8?q?chore:=20=EC=88=98=EB=8F=99=20=EB=B0=B0?= =?UTF-8?q?=ED=8F=AC=20=EC=9B=8C=ED=81=AC=ED=94=8C=EB=A1=9C=EC=9A=B0=20?= =?UTF-8?q?=EC=9E=91=EC=84=B1=20(#248)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: 개발서버 수동배포 워크플로 수정 * chore: 상용서버 수동배포 워크플로 작성 --- .github/workflows/develop_deploy.yml | 20 ++++++++--------- .github/workflows/production_deploy.yml | 29 +++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 10 deletions(-) create mode 100644 .github/workflows/production_deploy.yml diff --git a/.github/workflows/develop_deploy.yml b/.github/workflows/develop_deploy.yml index 395e9ecc0..095a2606e 100644 --- a/.github/workflows/develop_deploy.yml +++ b/.github/workflows/develop_deploy.yml @@ -16,14 +16,14 @@ jobs: uses: appleboy/ssh-action@master env: DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} - DOCKERHUB_IMAGE_TAG: ${{ github.event.inputs.commit_hash }} + IMAGE_FULL_URL: ${{ secrets.DOCKERHUB_USERNAME }}/gdsc-server:${{ github.event.inputs.commit_hash }} with: - host: ${{ secrets.EC2_HOST }} - username: ${{ secrets.EC2_USERNAME }} - key: ${{ secrets.EC2_PRIVATE_KEY }} - envs: DOCKERHUB_USERNAME,DOCKERHUB_IMAGE_TAG # docker-compose.yml 에서 사용할 환경 변수 - script: | - echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin - docker pull ${{ env.DOCKERHUB_USERNAME }}/gdsc-server:${{ env.DOCKERHUB_IMAGE_TAG }} - docker compose -f /home/ubuntu/docker-compose.yml up -d - docker image prune -a -f + host: ${{ secrets.EC2_HOST }} + username: ${{ secrets.EC2_USERNAME }} + key: ${{ secrets.EC2_PRIVATE_KEY }} + envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 + script: | + echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin + docker pull ${{ env.IMAGE_FULL_URL }} + docker compose up -d + docker image prune -a -f diff --git a/.github/workflows/production_deploy.yml b/.github/workflows/production_deploy.yml new file mode 100644 index 000000000..66737bdb1 --- /dev/null +++ b/.github/workflows/production_deploy.yml @@ -0,0 +1,29 @@ +name: Deploy to Production + +on: + workflow_dispatch: + inputs: + semver: + description: 'semver without v' + required: true + +jobs: + deploy: + runs-on: ubuntu-latest + environment: production + steps: + - name: Deploy to EC2 Server + uses: appleboy/ssh-action@master + env: + DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} + IMAGE_FULL_URL: ${{ secrets.DOCKERHUB_USERNAME }}/gdsc-server:${{ github.event.inputs.semver }} + with: + host: ${{ secrets.EC2_HOST }} + username: ${{ secrets.EC2_USERNAME }} + key: ${{ secrets.EC2_PRIVATE_KEY }} + envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 + script: | + echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin + docker pull ${{ env.IMAGE_FULL_URL }} + docker-compose up -d + docker image prune -a -f From 1ef7d5a3e9f4555c3ea2a5068ab3732523754a88 Mon Sep 17 00:00:00 2001 From: Cho Sangwook <82208159+Sangwook02@users.noreply.github.com> Date: Tue, 5 Mar 2024 00:46:36 +0900 Subject: [PATCH 2/3] =?UTF-8?q?fix:=20=EB=94=94=EC=8A=A4=EC=BD=94=EB=93=9C?= =?UTF-8?q?=20=EC=97=B0=EB=8F=99=20=EC=A0=84=EC=97=90=EB=8F=84=20=EB=8B=A4?= =?UTF-8?q?=EB=A5=B8=20=EA=B0=92=EB=93=A4=EC=9D=84=20=EC=88=98=EC=A0=95?= =?UTF-8?q?=ED=95=A0=20=EC=88=98=20=EC=9E=88=EB=8F=84=EB=A1=9D=20DTO=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD=20(#251)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix: 디스코드 연동 전에도 다른 값들을 수정할 수 있도록 dto 변경 --- .../gdsc/domain/member/dto/request/MemberUpdateRequest.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/gdschongik/gdsc/domain/member/dto/request/MemberUpdateRequest.java b/src/main/java/com/gdschongik/gdsc/domain/member/dto/request/MemberUpdateRequest.java index 95e8e8bce..15f25d2ab 100644 --- a/src/main/java/com/gdschongik/gdsc/domain/member/dto/request/MemberUpdateRequest.java +++ b/src/main/java/com/gdschongik/gdsc/domain/member/dto/request/MemberUpdateRequest.java @@ -21,8 +21,7 @@ public record MemberUpdateRequest( String phone, @NotNull @Schema(description = "학과") Department department, @NotBlank @Email @Schema(description = "이메일") String email, - @NotBlank @Schema(description = "디스코드 유저네임") String discordUsername, - @NotBlank - @Pattern(regexp = NICKNAME, message = "닉네임은 " + NICKNAME + " 형식이어야 합니다.") + @Schema(description = "디스코드 유저네임") String discordUsername, + @Pattern(regexp = NICKNAME, message = "닉네임은 " + NICKNAME + " 형식이어야 합니다.") @Schema(description = "커뮤니티 닉네임", pattern = NICKNAME) String nickname) {} From e462a3855f76dda8cbeb670f7f4b93960089ae91 Mon Sep 17 00:00:00 2001 From: Jaehyun Ahn <91878695+uwoobeat@users.noreply.github.com> Date: Tue, 5 Mar 2024 00:57:55 +0900 Subject: [PATCH 3/3] =?UTF-8?q?chore:=20Spotless=EA=B0=80=20YAML=20?= =?UTF-8?q?=ED=8C=8C=EC=9D=BC=EC=9D=84=20=EC=B2=B4=ED=81=AC=ED=95=98?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EC=84=A4=EC=A0=95=20=EC=B6=94=EA=B0=80=20?= =?UTF-8?q?(#252)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: YAML 포맷팅 설정 추가 * chore: spotless yaml 적용 --- .github/workflows/develop_build_deploy.yml | 21 ++++++++++--------- .github/workflows/develop_deploy.yml | 4 ++-- .github/workflows/production_build_deploy.yml | 19 +++++++++-------- .github/workflows/production_deploy.yml | 4 ++-- .../workflows/pull_request_gradle_build.yml | 4 ++-- build.gradle | 7 ++++++- 6 files changed, 33 insertions(+), 26 deletions(-) diff --git a/.github/workflows/develop_build_deploy.yml b/.github/workflows/develop_build_deploy.yml index 7f50a9ae3..c8d90f94a 100644 --- a/.github/workflows/develop_build_deploy.yml +++ b/.github/workflows/develop_build_deploy.yml @@ -2,7 +2,7 @@ name: Build and Deploy to Develop on: push: - branches: [ "develop" ] + branches: ["develop"] permissions: id-token: write @@ -17,8 +17,8 @@ jobs: environment: develop strategy: matrix: - java-version: [ 17 ] - distribution: [ 'temurin' ] + java-version: [17] + distribution: ["temurin"] steps: # 체크아웃 - name: Checkout @@ -103,12 +103,13 @@ jobs: uses: Ilshidur/action-discord@master env: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} - DISCORD_EMBEDS: '[ - { - "title": "푸드덕푸드덕푸드덕", - "description": "구구구구국 구구...: ${{ steps.gradle.outputs.build-scan-url }}" - } - ]' + DISCORD_EMBEDS: | + [ + { + "title": "푸드덕푸드덕푸드덕", + "description": "구구구구국 구구...: ${{ steps.gradle.outputs.build-scan-url }}" + } + ] # EC2로 배포 - name: Deploy to EC2 Server @@ -120,7 +121,7 @@ jobs: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} - envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 + envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 script: | aws s3 cp ${{ env.S3_COPY_PATH }} docker-compose.yml echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin diff --git a/.github/workflows/develop_deploy.yml b/.github/workflows/develop_deploy.yml index 095a2606e..0f3c6648d 100644 --- a/.github/workflows/develop_deploy.yml +++ b/.github/workflows/develop_deploy.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: inputs: commit_hash: - description: 'commit_hash' + description: "commit_hash" required: true jobs: @@ -21,7 +21,7 @@ jobs: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} - envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 + envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 script: | echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin docker pull ${{ env.IMAGE_FULL_URL }} diff --git a/.github/workflows/production_build_deploy.yml b/.github/workflows/production_build_deploy.yml index b89c84e06..29651e98d 100644 --- a/.github/workflows/production_build_deploy.yml +++ b/.github/workflows/production_build_deploy.yml @@ -17,8 +17,8 @@ jobs: environment: production strategy: matrix: - java-version: [ 17 ] - distribution: [ 'temurin' ] + java-version: [17] + distribution: ["temurin"] steps: # 체크아웃 - name: Checkout @@ -119,12 +119,13 @@ jobs: uses: Ilshidur/action-discord@master env: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} - DISCORD_EMBEDS: '[ - { - "title": "푸드덕푸드덕푸드덕", - "description": "구구구구국 구구...: ${{ steps.gradle.outputs.build-scan-url }}" - } - ]' + DISCORD_EMBEDS: | + [ + { + "title": "푸드덕푸드덕푸드덕", + "description": "구구구구국 구구...: ${{ steps.gradle.outputs.build-scan-url }}" + } + ] - name: Deploy to EC2 Server uses: appleboy/ssh-action@master @@ -135,7 +136,7 @@ jobs: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} - envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 + envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 script: | aws s3 cp ${{ env.S3_COPY_PATH }} docker-compose.yml echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin diff --git a/.github/workflows/production_deploy.yml b/.github/workflows/production_deploy.yml index 66737bdb1..ec4cf828d 100644 --- a/.github/workflows/production_deploy.yml +++ b/.github/workflows/production_deploy.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: inputs: semver: - description: 'semver without v' + description: "semver without v" required: true jobs: @@ -21,7 +21,7 @@ jobs: host: ${{ secrets.EC2_HOST }} username: ${{ secrets.EC2_USERNAME }} key: ${{ secrets.EC2_PRIVATE_KEY }} - envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 + envs: IMAGE_FULL_URL # docker-compose.yml 에서 사용할 환경 변수 script: | echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin docker pull ${{ env.IMAGE_FULL_URL }} diff --git a/.github/workflows/pull_request_gradle_build.yml b/.github/workflows/pull_request_gradle_build.yml index 5d65ad446..c01e2b432 100644 --- a/.github/workflows/pull_request_gradle_build.yml +++ b/.github/workflows/pull_request_gradle_build.yml @@ -1,8 +1,8 @@ -name : Check Style and Test to Develop +name: Check Style and Test to Develop on: pull_request: - branches: [ "develop" ] + branches: ["develop"] jobs: build-test: diff --git a/build.gradle b/build.gradle index c400cd934..dad56014c 100644 --- a/build.gradle +++ b/build.gradle @@ -91,7 +91,7 @@ jar { spotless { format 'misc', { - target '**/*.yml', '**/*.gradle', '**/*.md' + target '**/*.gradle', '**/*.md' trimTrailingWhitespace() indentWithSpaces(4) endWithNewline() @@ -102,6 +102,11 @@ spotless { palantirJavaFormat() formatAnnotations() } + + yaml { + target '**/*.yml' + prettier() + } } tasks.register('updateGitHooks', Copy) {