From 5d72500a0529a01aa6e973eafb2d421aa34bbc66 Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Fri, 11 Jul 2025 21:14:48 +0900 Subject: [PATCH 01/16] Update ci.yml --- .github/workflows/ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7df659fa..f20fdf51 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,3 +27,7 @@ jobs: SPRING_PROFILES_ACTIVE: test run: ./gradlew clean build --stacktrace shell: bash + + - uses: actions/checkout@v4 + - name: Build the Docker image + run: docker build . --file Dockerfile --tag kodaero:$(date +%s) From c6a608477e22d7d46d1936470ce91f9e577a9851 Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Fri, 11 Jul 2025 21:18:51 +0900 Subject: [PATCH 02/16] Update ci.yml --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f20fdf51..6dbc7def 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,9 @@ on: pull_request: branches: - develop + push: + branches: + - develop jobs: build: From 1fdc21a482474475ddc7997b215c6b4df59175b6 Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Fri, 11 Jul 2025 21:21:46 +0900 Subject: [PATCH 03/16] Update ci.yml --- .github/workflows/ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6dbc7def..b5f4f089 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,6 +31,5 @@ jobs: run: ./gradlew clean build --stacktrace shell: bash - - uses: actions/checkout@v4 - name: Build the Docker image run: docker build . --file Dockerfile --tag kodaero:$(date +%s) From 4a070e3ee7f34131bd589d26fb9eafa67a4e740a Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Fri, 11 Jul 2025 21:25:07 +0900 Subject: [PATCH 04/16] Update aws.yml --- .github/workflows/aws.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/aws.yml b/.github/workflows/aws.yml index 31a4e5f5..fa15055d 100644 --- a/.github/workflows/aws.yml +++ b/.github/workflows/aws.yml @@ -28,7 +28,7 @@ name: Deploy to Amazon ECS on: push: - branches: [ "main" ] + branches: #[ "main" ] env: AWS_REGION: ${{ secrets.AWS_ECS_REGION }} # set this to your preferred AWS region, e.g. us-west-1 From 5b0fa605b27831afbb8551e08adb16741d5ab766 Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Fri, 11 Jul 2025 21:25:26 +0900 Subject: [PATCH 05/16] Update aws-dev.yml --- .github/workflows/aws-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/aws-dev.yml b/.github/workflows/aws-dev.yml index f4089536..c5b62f2f 100644 --- a/.github/workflows/aws-dev.yml +++ b/.github/workflows/aws-dev.yml @@ -28,7 +28,7 @@ name: Deploy to Amazon ECS on: push: - branches: [ "develop"] + branches: #[ "develop"] env: AWS_REGION: ${{ secrets.AWS_ECS_REGION }} # set this to your preferred AWS region, e.g. us-west-1 From 168f8814bcd8b6720afd7bd2d222f5e9d420363c Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Fri, 11 Jul 2025 21:26:49 +0900 Subject: [PATCH 06/16] Update ci.yml --- .github/workflows/ci.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b5f4f089..e710d869 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,5 +31,10 @@ jobs: run: ./gradlew clean build --stacktrace shell: bash - - name: Build the Docker image - run: docker build . --file Dockerfile --tag kodaero:$(date +%s) + - name: Docker build & push to prod + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + run: | + docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} + docker build -t kodaero -f ./Dockerfile . + docker tag kodaero:latest ${{ secrets.DOCKER_USER }}/kodaero:latest + docker push ${{ secrets.DOCKER_USER }}/kodaero:latest From b606a543d604acff2ec5a081c8bc49004a752ccf Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 14:01:28 +0900 Subject: [PATCH 07/16] Create cd.yml --- .github/workflows/cd.yml | 72 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 .github/workflows/cd.yml diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml new file mode 100644 index 00000000..7ed025ea --- /dev/null +++ b/.github/workflows/cd.yml @@ -0,0 +1,72 @@ +name: CI/CD using github actions & docker + +on: + push: + branches: + - develop + +permissions: + contents: read + +jobs: + push_to_registry: + name: Push to aws container registry + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'corretto' + + - name: make application-prod.yml + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + run: | + cd ./src/main/resources + touch ./application-prod.yml + echo "${{ secrets.YML_PROD }}" > ./application-prod.yml + shell: bash + + - name: Grant execute permission for gradlew + run: chmod +x gradlew + + - name: Build with Gradle + env: + SPRING_PROFILES_ACTIVE: prod + run: ./gradlew clean build --stacktrace + shell: bash + + - name: Docker build & push to prod + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + run: | + docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} + docker build -t kodaero-f ./Dockerfile . + docker tag kodaero:latest ${{ secrets.DOCKER_USER }}/kodaero:latest + docker push ${{ secrets.DOCKER_USER }}/kodaero:latest + + + pull_from_registry: + name: Connect server ssh and pull from container registry + needs: push_to_registry + runs-on: ubuntu-latest + steps: + - name: Get Github action IP + id: ip + uses: haythem/public-ip@v1.2 + + - name: Deploy to prod + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.HOST_NAME }} + username: ${{ secrets.USER_NAME }} + password: ${{ secrets.USER_PASSWORD }} + port: ${{ secrets.PORT }} + script: | + docker pull ${{ secrets.DOCKER_USER }}/kodaero:latest + chmod +x ./deploy-dev.sh + ./deploy-dev.sh + docker image prune -f From 92e226447876ade76026961052eb4e4d5ca4affc Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 14:30:25 +0900 Subject: [PATCH 08/16] Update cd.yml --- .github/workflows/cd.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 7ed025ea..bc6e5a89 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -67,6 +67,6 @@ jobs: port: ${{ secrets.PORT }} script: | docker pull ${{ secrets.DOCKER_USER }}/kodaero:latest - chmod +x ./deploy-dev.sh - ./deploy-dev.sh + chmod +x ./deploy.sh dev + ./deploy.sh dev docker image prune -f From 4eaac01e6f607457fa2497aa26438ea2ce48852a Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:30:10 +0900 Subject: [PATCH 09/16] Update and rename cd.yml to cd-dev.yml --- .github/workflows/{cd.yml => cd-dev.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{cd.yml => cd-dev.yml} (100%) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd-dev.yml similarity index 100% rename from .github/workflows/cd.yml rename to .github/workflows/cd-dev.yml From 9600524f80ce183ac6f04d384915cb8d70af3b3d Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:30:52 +0900 Subject: [PATCH 10/16] Create cd.yml --- .github/workflows/cd.yml | 72 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 .github/workflows/cd.yml diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml new file mode 100644 index 00000000..9da3a76e --- /dev/null +++ b/.github/workflows/cd.yml @@ -0,0 +1,72 @@ +name: CI/CD using github actions & docker + +on: + push: + branches: + - main + +permissions: + contents: read + +jobs: + push_to_registry: + name: Push to aws container registry + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'corretto' + + - name: make application-prod.yml + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + run: | + cd ./src/main/resources + touch ./application-prod.yml + echo "${{ secrets.YML_PROD }}" > ./application-prod.yml + shell: bash + + - name: Grant execute permission for gradlew + run: chmod +x gradlew + + - name: Build with Gradle + env: + SPRING_PROFILES_ACTIVE: prod + run: ./gradlew clean build --stacktrace + shell: bash + + - name: Docker build & push to prod + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + run: | + docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} + docker build -t kodaero-f ./Dockerfile . + docker tag kodaero:latest ${{ secrets.DOCKER_USER }}/kodaero:latest + docker push ${{ secrets.DOCKER_USER }}/kodaero:latest + + + pull_from_registry: + name: Connect server ssh and pull from container registry + needs: push_to_registry + runs-on: ubuntu-latest + steps: + - name: Get Github action IP + id: ip + uses: haythem/public-ip@v1.2 + + - name: Deploy to prod + if: contains(github.ref, 'develop') || contains(github.ref, 'main') + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.HOST_NAME }} + username: ${{ secrets.USER_NAME }} + password: ${{ secrets.USER_PASSWORD }} + port: ${{ secrets.PORT }} + script: | + docker pull ${{ secrets.DOCKER_USER }}/kodaero:latest + chmod +x ./deploy.sh + ./deploy.sh prod + docker image prune -f From 70348b968e1d21bac63f1a7c1925bd414e953527 Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:31:12 +0900 Subject: [PATCH 11/16] Update cd-dev.yml --- .github/workflows/cd-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cd-dev.yml b/.github/workflows/cd-dev.yml index bc6e5a89..f3d501c2 100644 --- a/.github/workflows/cd-dev.yml +++ b/.github/workflows/cd-dev.yml @@ -67,6 +67,6 @@ jobs: port: ${{ secrets.PORT }} script: | docker pull ${{ secrets.DOCKER_USER }}/kodaero:latest - chmod +x ./deploy.sh dev + chmod +x ./deploy.sh ./deploy.sh dev docker image prune -f From 2c887045d8586ceba8b03fa0ae44e8c59495b3fc Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:33:31 +0900 Subject: [PATCH 12/16] Delete .github/workflows/aws.yml --- .github/workflows/aws.yml | 123 -------------------------------------- 1 file changed, 123 deletions(-) delete mode 100644 .github/workflows/aws.yml diff --git a/.github/workflows/aws.yml b/.github/workflows/aws.yml deleted file mode 100644 index fa15055d..00000000 --- a/.github/workflows/aws.yml +++ /dev/null @@ -1,123 +0,0 @@ -# This workflow will build and push a new container image to Amazon ECR, -# and then will deploy a new task definition to Amazon ECS, when there is a push to the "develop" branch. -# -# To use this workflow, you will need to complete the following set-up steps: -# -# 1. Create an ECR repository to store your images. -# For example: `aws ecr create-repository --repository-name my-ecr-repo --region us-east-2`. -# Replace the value of the `ECR_REPOSITORY` environment variable in the workflow below with your repository's name. -# Replace the value of the `AWS_REGION` environment variable in the workflow below with your repository's region. -# -# 2. Create an ECS task definition, an ECS cluster, and an ECS service. -# For example, follow the Getting Started guide on the ECS console: -# https://us-east-2.console.aws.amazon.com/ecs/home?region=us-east-2#/firstRun -# Replace the value of the `ECS_SERVICE` environment variable in the workflow below with the name you set for the Amazon ECS service. -# Replace the value of the `ECS_CLUSTER` environment variable in the workflow below with the name you set for the cluster. -# -# 3. Store your ECS task definition as a JSON file in your repository. -# The format should follow the output of `aws ecs register-task-definition --generate-cli-skeleton`. -# Replace the value of the `ECS_TASK_DEFINITION` environment variable in the workflow below with the path to the JSON file. -# Replace the value of the `CONTAINER_NAME` environment variable in the workflow below with the name of the container -# in the `containerDefinitions` section of the task definition. -# -# 4. Store an IAM user access key in GitHub Actions secrets named `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`. -# See the documentation for each action used below for the recommended IAM policies for this IAM user, -# and best practices on handling the access key credentials. - -name: Deploy to Amazon ECS - -on: - push: - branches: #[ "main" ] - -env: - AWS_REGION: ${{ secrets.AWS_ECS_REGION }} # set this to your preferred AWS region, e.g. us-west-1 - ECR_REPOSITORY: ${{ secrets.ECR_REPO }} # set this to your Amazon ECR repository name - ECS_SERVICE: ${{ secrets.ECS_SERVICE }} # set this to your Amazon ECS service name - ECS_CLUSTER: ${{ secrets.ECS_CLUSTER }} # set this to your Amazon ECS cluster name - ECS_TASK_DEFINITION: .aws/task-definition.json # set this to the path to your Amazon ECS task definition - # file, e.g. .aws/task-definition.json - CONTAINER_NAME: kodaero # set this to the name of the container in the - # containerDefinitions section of your task definition - -permissions: - contents: read - -jobs: - deploy: - name: Deploy - runs-on: ubuntu-latest - environment: production - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set up JDK 17 - uses: actions/setup-java@v3 - with: - java-version: '17' - distribution: 'corretto' - - - name: make application-prod.yml - if: contains(github.ref, 'develop') || contains(github.ref, 'main') - run: | - cd ./src/main/resources - touch ./application-prod.yml - echo "${{ secrets.YML_PROD }}" > ./application-prod.yml - shell: bash - - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - - name: Build with Gradle - env: - SPRING_PROFILES_ACTIVE: prod - run: ./gradlew clean build --stacktrace - shell: bash - - - 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 }} - - - name: Login to Amazon ECR - id: login-ecr - uses: aws-actions/amazon-ecr-login@v1 - - - name: Build, tag, and push image to Amazon ECR - id: build-image - env: - ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} - IMAGE_TAG: ${{ github.sha }} - run: | - # Build a docker container and - # push it to ECR so that it can - # be deployed to ECS. - docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG -f ./Dockerfile . - docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG - echo "image=$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG" >> $GITHUB_OUTPUT - - - name: Create task definition file - run: | - mkdir -p .aws # 디렉토리 없으면 생성 - echo '${{ secrets.TASK_DEFINITION_JSON }}' > .aws/task-definition.json - - - - name: Fill in the new image ID in the Amazon ECS task definition - id: task-def - uses: aws-actions/amazon-ecs-render-task-definition@v1 - with: - task-definition: ${{ env.ECS_TASK_DEFINITION }} - container-name: ${{ env.CONTAINER_NAME }} - image: ${{ steps.build-image.outputs.image }} - - - name: Deploy Amazon ECS task definition - uses: aws-actions/amazon-ecs-deploy-task-definition@v1 - with: - task-definition: ${{ steps.task-def.outputs.task-definition }} - service: ${{ env.ECS_SERVICE }} - cluster: ${{ env.ECS_CLUSTER }} - wait-for-service-stability: true From 7d68424bb9d1463144bfd88ba5c178cd53e1ffff Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:33:41 +0900 Subject: [PATCH 13/16] Delete .github/workflows/aws-dev.yml --- .github/workflows/aws-dev.yml | 123 ---------------------------------- 1 file changed, 123 deletions(-) delete mode 100644 .github/workflows/aws-dev.yml diff --git a/.github/workflows/aws-dev.yml b/.github/workflows/aws-dev.yml deleted file mode 100644 index c5b62f2f..00000000 --- a/.github/workflows/aws-dev.yml +++ /dev/null @@ -1,123 +0,0 @@ -# This workflow will build and push a new container image to Amazon ECR, -# and then will deploy a new task definition to Amazon ECS, when there is a push to the "develop" branch. -# -# To use this workflow, you will need to complete the following set-up steps: -# -# 1. Create an ECR repository to store your images. -# For example: `aws ecr create-repository --repository-name my-ecr-repo --region us-east-2`. -# Replace the value of the `ECR_REPOSITORY` environment variable in the workflow below with your repository's name. -# Replace the value of the `AWS_REGION` environment variable in the workflow below with your repository's region. -# -# 2. Create an ECS task definition, an ECS cluster, and an ECS service. -# For example, follow the Getting Started guide on the ECS console: -# https://us-east-2.console.aws.amazon.com/ecs/home?region=us-east-2#/firstRun -# Replace the value of the `ECS_SERVICE` environment variable in the workflow below with the name you set for the Amazon ECS service. -# Replace the value of the `ECS_CLUSTER` environment variable in the workflow below with the name you set for the cluster. -# -# 3. Store your ECS task definition as a JSON file in your repository. -# The format should follow the output of `aws ecs register-task-definition --generate-cli-skeleton`. -# Replace the value of the `ECS_TASK_DEFINITION` environment variable in the workflow below with the path to the JSON file. -# Replace the value of the `CONTAINER_NAME` environment variable in the workflow below with the name of the container -# in the `containerDefinitions` section of the task definition. -# -# 4. Store an IAM user access key in GitHub Actions secrets named `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`. -# See the documentation for each action used below for the recommended IAM policies for this IAM user, -# and best practices on handling the access key credentials. - -name: Deploy to Amazon ECS - -on: - push: - branches: #[ "develop"] - -env: - AWS_REGION: ${{ secrets.AWS_ECS_REGION }} # set this to your preferred AWS region, e.g. us-west-1 - ECR_REPOSITORY: ${{ secrets.ECR_REPO }} # set this to your Amazon ECR repository name - ECS_SERVICE: dev-kodaero # set this to your Amazon ECS service name - ECS_CLUSTER: ${{ secrets.ECS_CLUSTER }} # set this to your Amazon ECS cluster name - ECS_TASK_DEFINITION: .aws/task-definition.json # set this to the path to your Amazon ECS task definition - # file, e.g. .aws/task-definition.json - CONTAINER_NAME: dev-kodaero # set this to the name of the container in the - # containerDefinitions section of your task definition - -permissions: - contents: read - -jobs: - deploy: - name: Deploy - runs-on: ubuntu-latest - environment: production - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Set up JDK 17 - uses: actions/setup-java@v3 - with: - java-version: '17' - distribution: 'corretto' - - - name: make application-prod.yml - if: contains(github.ref, 'develop') || contains(github.ref, 'main') - run: | - cd ./src/main/resources - touch ./application-prod.yml - echo "${{ secrets.YML_DEV_PROD }}" > ./application-prod.yml - shell: bash - - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - - name: Build with Gradle - env: - SPRING_PROFILES_ACTIVE: prod - run: ./gradlew clean build --stacktrace - shell: bash - - - 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 }} - - - name: Login to Amazon ECR - id: login-ecr - uses: aws-actions/amazon-ecr-login@v1 - - - name: Build, tag, and push image to Amazon ECR - id: build-image - env: - ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} - IMAGE_TAG: ${{ github.sha }} - run: | - # Build a docker container and - # push it to ECR so that it can - # be deployed to ECS. - docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG -f ./Dockerfile . - docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG - echo "image=$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG" >> $GITHUB_OUTPUT - - - name: Create task definition file - run: | - mkdir -p .aws # 디렉토리 없으면 생성 - echo '${{ secrets.DEV_TASK_DEFINITION_JSON }}' > .aws/task-definition.json - - - - name: Fill in the new image ID in the Amazon ECS task definition - id: task-def - uses: aws-actions/amazon-ecs-render-task-definition@v1 - with: - task-definition: ${{ env.ECS_TASK_DEFINITION }} - container-name: ${{ env.CONTAINER_NAME }} - image: ${{ steps.build-image.outputs.image }} - - - name: Deploy Amazon ECS task definition - uses: aws-actions/amazon-ecs-deploy-task-definition@v1 - with: - task-definition: ${{ steps.task-def.outputs.task-definition }} - service: ${{ env.ECS_SERVICE }} - cluster: ${{ env.ECS_CLUSTER }} - wait-for-service-stability: true From 8f3723576f5c13e53c7471c4c05592c0c8aefd4d Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:35:21 +0900 Subject: [PATCH 14/16] Update cd.yml --- .github/workflows/cd.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 9da3a76e..b4389eb1 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -43,7 +43,7 @@ jobs: if: contains(github.ref, 'develop') || contains(github.ref, 'main') run: | docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} - docker build -t kodaero-f ./Dockerfile . + docker build -t kodaero -f ./Dockerfile . docker tag kodaero:latest ${{ secrets.DOCKER_USER }}/kodaero:latest docker push ${{ secrets.DOCKER_USER }}/kodaero:latest From c095cdd976557d003a01c4001e8c079301878411 Mon Sep 17 00:00:00 2001 From: LeeYejin <99391320+dlwls423@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:35:37 +0900 Subject: [PATCH 15/16] Update cd-dev.yml --- .github/workflows/cd-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cd-dev.yml b/.github/workflows/cd-dev.yml index f3d501c2..a0450d6a 100644 --- a/.github/workflows/cd-dev.yml +++ b/.github/workflows/cd-dev.yml @@ -43,7 +43,7 @@ jobs: if: contains(github.ref, 'develop') || contains(github.ref, 'main') run: | docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} - docker build -t kodaero-f ./Dockerfile . + docker build -t kodaero -f ./Dockerfile . docker tag kodaero:latest ${{ secrets.DOCKER_USER }}/kodaero:latest docker push ${{ secrets.DOCKER_USER }}/kodaero:latest From 5ef3fdc164e50d1467756ae294f5e8ef375fa610 Mon Sep 17 00:00:00 2001 From: yejin Date: Mon, 4 Aug 2025 20:56:19 +0900 Subject: [PATCH 16/16] =?UTF-8?q?Feat:=20=ED=94=84=EB=A1=9C=EB=A9=94?= =?UTF-8?q?=ED=85=8C=EC=9A=B0=EC=8A=A4,=20=EA=B7=B8=EB=9D=BC=ED=8C=8C?= =?UTF-8?q?=EB=82=98=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 3 +++ src/main/resources/application.yml | 11 ++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 6d20fbeb..d2b3ea41 100644 --- a/build.gradle +++ b/build.gradle @@ -102,6 +102,9 @@ dependencies { // cloudwatch implementation 'io.micrometer:micrometer-registry-cloudwatch2' implementation 'software.amazon.awssdk:cloudwatch' + + // prometheus + implementation 'io.micrometer:micrometer-registry-prometheus' } dependencyManagement { imports { diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 2c365947..59bd84a1 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -105,4 +105,13 @@ date: decoded-key: ${HOLIDAY_API_DECODED_KEY} metrics: - environment: ${METRICS_ENV} \ No newline at end of file + environment: ${METRICS_ENV} + +management: + endpoints: + web: + exposure: + include: prometheus, health, info + metrics: + tags: + application: kodaero \ No newline at end of file