Skip to content

Commit 532f7fd

Browse files
v1.0.0: release 1차 운영 배포 (#31)
* chore: submodule 등록 * chore: submodule 프로젝트 참조 포인터 설정 * chore: split cicd workflow for dev, prod * chore: remove unnecessary comments * chore: split task-definition.json for dev, prod * chore: update task-definition command * chore: update hostport to 0 * chore: add spring profiles environment * chore: add spring profiles * chore: update .gitignore * chore: split application.yml for dev, prod * feat: change response type of health check * feat: change response message of health check * chore: submodule 수정 테스트 * chore: set submodule * chore: update submodule * chore: test cicd with submodule * chore: add TimeZone Asia/Seoul * chore: Integrate into a single CI/CD workflow * chore: fix cicd * chore: 빌드 시 테스트 제외(테스트) * chore: check cloning yml file * chore: ci 환경을 고려하여 yml 경로 수정 * chore: echo yml file * chore: local 환경과 ci 환경에서 모두 yml을 찾도록 수정 * chore: check application running port * chore: build 시 yml 누락 현상 해결 * chore: build시 submodule 상대경로 설정 * chore: debug container name * feat: 공통 예외처리 * feat: 공통 응답 추가 및 그에 따른 수정 * chore: update the configuration file * feat: set error code for Jwt * feat: add jwt error handlers * feat: add token generation * feat: add JwtAuthenticationFilter * feat: add dto class for login * feat: add user info class about kakao * feat: add user entity * feat: add social enum * feat: add kakao social login * feat: add security configuration * feat: add social login api * chore: redis 설정 및 테스트 (#4) * chore: 테스트 빌드 실패 현상 해결 * remove: remove unnecessary error codes * chore: 헬스체크 재설정 * chore: dev 환경에서 spring 어플리케이션과 redis 컨테이너 링크 * chore: dev 환경 redis 설정 수정 * chore: links 옵션 추가 * remove: remove @NoArgsConstructor annotation * feat: change the response format to CustomResponseDto * feat: change the response format to CustomResponseDto * feat: change directory to infrastructure * chore: stop tracking ./gradle directory * remove: 사용하지 않는 ErrorCode 제거 * feat: swagger 공통 응답 코드 어노테이션 생성 * fix: ErrorCode 클래스로 변경 및 에러코드 통합 * refactor: 에러 코드 통합으로 인한 import 제 * feat: 스웨거 설정 및 에러 응답 유틸화 * fix: permit url 추가(swagger 관련 url) * chore: yml 업데이트 * feat: 슬랙 에러 로그 수신 기능 추가 * chore: 개발환경 태스크 메모리 제한 줄이기 * chore: 메모리 부족으로 인한 ecs 롤링 배포 실패를 해결하기 위해 redis 제거 * chore: redis 링크 파라미터 제거 * chore: task 할당 자원 추가 * chore: 메모리 증설 redis 재 연결 * [T3-53] add redis service for refresh token (#8) * chore: update directory structure * chore: update directory structure for model, request, response * feat: change the token generation method * feat: update JWT error code * feat: add redis hash for refreshToken * refactor: change class name to TokenResponse * feat: add redis service for refreshToken * feat: add an api for reissuing tokens * refactor: delete a subdirectory of jwt * refactor: move service logic from the controller layer to the service layer * refactor: move class about request or response from model to request or response * remove: delete unnecessary Kakao variables * refactor: update class name about user's auth * refactor: change to common error handling * refactor: change directory name to kakao from oauth2 * feat: add annotation in ProdRedisConfig * refactor: Change from RestTemplate to FeignClient * feat: add a nickname field to your kakao profile * refactor: change name from RedisService to AuthRedisService * refactor: change directory name from model, entity to domain * feat: add domain object to map Kakao, Apple membership information * refactor: change to use one social login for both Apple and Kakao * refactor: change to improved switch statements * chore: 개발서버 cpu 가용량 1/2로 감소 * chore: yml 업데이트 * fix: Spring security에서 health-check url 허용 * feat: add time to create, update, and delete entities * feat: add custom annotations to query user information stored in security in API requests * refactor: manage as an array of URLs that can be accessed without authentication or authorization * feat: blacklist and delete access tokens * feat: add logout service logic and API * feat: apple 로그인 구 (#9) * chore: 개발서버 redis 호스트 포트 충돌 해결 * chore: awscli install 로직 제거 * chore: 불필요한 출력문 제거 * chore: redis를 신규로 띄우는 경우 포트 설정 * chore: 문법오류 수정 * feat: define the user authentication API swagger specification * feat: add kakao unsubscribe API request * feat: add kakao unsubscribe API controller and swagger spec * feat: add exception handling and retry logic for Kakao member information retrieving api * refactor: modify Kakao membership withdrawal API UserAuthHandler class * feat: invalidate kakao access token * chore: Update environment variables * refactor: Modify logout and member withdrawal controller and reflect changes in Swagger * feat: Add all possible errors that may occur in Swagger specs * fix: 회원탈퇴 과정에서 카카오 액세스 토큰 무효화 과정 삭제 * refactor: 카카오 서버 API 관련 클래스 디렉토리 및 이름 변경 * refactor: 카카오 관련 토큰 무효화 메서드명 변경 * refactor: Added Kakao server error handling * refactor: KakaoUserInfoService에서 애플 관련 로직 UserAuthService 이동 * refactor: 카카오 서버 API 로직을 KakaoAuthClient 클래스로 통합 * chore: 메서드 주석 추가 * feat: accessToken 블랙리스트 등록 로직 삭제 * refactor: FeignClient name 수정 * chore: 서브모듈 업데이트 * [T3-61] 애플 로그아웃, 탈퇴 구현 (#11) * feat: 애플 로그아웃, 탈퇴 구현 * refactor: 스웨거 수정 * fix: 공통 예외처리 수정 및 추가 * fix: ResponseEntityExceptionHandler 상속 제거 * fix: swagger 오류 * fix: 소셜로그인 refreshtoken 저장 및 스웨거 수정 * remove: 액세스 토큰 만료기한 필드 삭제 * feat: 스웨거 호출 위한 config 설정 추가 * refactor: 카카오 로그아웃 요청 방식 변경 * remove: CORS 설정에서 불필요한 도메인 삭제 * remove: CORS 설정에서 Preflight(OPTIONS) 요청 관련 허용 설정 삭제 * feat: 도메인 허용 및 prelight 관련 설정 추가 * chore: 주석 수정 * fix: setAllowCredentials를 허용 * feat: 스웨거 관련 하위 경로가 인증 필터에 적용받지 않도록 shouldNotFilter 추가 * fix: 애플 로그아웃 시 카카오 인증 서버 요청 오류 수정 * hotfix: 애플 feign 에러 디코딩 수정 * fix: apple 탈퇴 후 재가입 시 email null 오류 방지 예외처리 * feat: errorcode 업데이트 * feat: 약관 동의 및 role 기반 분기처리 * feat: Routine 엔티티 클래스 추가 단일 컬럼에서 여러 개의 요일을 관리하기 위해 DayOfWeek Enum 클래스 생성 DB 레벨과 코드 레벨에서의 형식을 맞추기 위해 DayOfWeekConverter 추가 * feat: SubRoutine 엔티티 클래스 추가 * feat: 루틴 등록 API 및 RequestBody 객체 클래스 추가 * feat: 루틴 등록 서비스 로직 추가 * chore: 불필요한 주석 제거 * feat: 루틴 등록 서비스 로직에 대한 테스트 코드 추가 * feat: 루틴 등록 API 스웨거 추가 * refactor: DayOfWeek를 커스텀 enum 클래스 대신 Java에서 제공하는 enum으로 변경 * chore: 메스드 설명 주석 추가 * feat: executionTime 스키마 필수 필드 설정 * chore: init sql 추가(추천루틴, 추천서브루틴, 온보딩, 케이스) * feat: entity 추가(Onboarding, Case, RecommendedRoutine, RecommendedSubRoutine) * fix: 공통 응답 처리 버그 수 * feat: 온보딩 스웨거 추가 * feat: http request login 추가 * feat: 온보딩 로직 추 * fix: jpa ddl 시 enum -> varchar 로 수정 * feat: onboarding 추가 * feat: 서브모듈 업데이트 * fix: Onboarding 응답 response 수정 * refactor: global/utils 경로로 이동 * remove: @table 어노테이션 삭제 * remove: 불필요한 어노테이션 삭제 * refactor: 엔티티 생성 빌더 service 레이어로 이동 * chore: submodule 업데이트 * refactor: 이력을 관리하는 시간을 LocalDateTime으로 변경 * refactor: END_DATE_TIME 수정 * refactor: 반복요일 필드명 수정 * refactor: 테스트 코드 수정 * chore: pull request 템플릿 추가 * feat: 온보딩시 추천 루틴에 대한 수정 * feat: 변경 루틴 엔티티 및 레포지토리 추 * fix: BaseTimeEntity 추 * chore: init sql 수정 * feat: 온보딩 시 추천 루틴 등록 API 추 * fix: null return 대신 Object 리턴 * remove: 불필요한 user 조회 로직 제거 * feat: RegisterRoutineRequest, UpdateRoutineRequest의 공통 필드들을 하나의 메서드에서 사용하기 위한 인터페이스 추가 * feat: 루틴, 서브루틴 업데이트 메서드 추가 * feat: 객체 동등성 수행을 위해 equals, hashCode 메서드 오버라이드 * feat: 루틴 및 서브루틴 업데이트 API 추가 * chore: develop 브랜치에서 변경사항 병합 * feat: 루틴, 서브루틴 업데이트 메서드 추가 * feat: 루틴 및 서브루틴 삭제 로직 추가 * feat: 루틴 및 서브루틴 삭제 API 추가 * feat: 이력 관리를 위해 복합키 객체 HistoryPk 추가 * feat: 추가된 복합키를 고려해서 루틴 관련 Request 객체 수정 * remove: LocalDateTime.now() 상수 삭제 * refactor: 추가된 복합키를 고려하여 루틴 및 서브루틴 업데이트 서비스 로직 수정 * feat: 에러 관련 스웨거 스펙 추가 * refactor: updateHistoryEndDate 메서드명 변경 * refactor: 복합키 기반으로 루틴 삭제 메서드 수정 루틴 업데이트 메서드에서 서브 루틴이 null일 때 처리 추가 * refactor: 삭제 루틴 API 및 스웨거 설명 수정 * refactor: User 엔티티 복합키로 변환 이력관리 필드 추가 * refactor: user 엔티티 복합키를 외래키로 설정 복합키 기반으로 routineService의 로직 수정 * refactor: changedRoutine 및 changedSubRoutine 테이블에 PK를 복합키로 수정 관련된 온보딩 서비스 로직 수정 * refactor: BaseTimeEntity 디렉토리 변경으로 인해 import 수정 * refactor: BaseTimeEntity 디렉토리 변경으로 인해 import 수정 (Case 클래스 추가) * refactor: User 복합키를 바탕으로 기존 JWT 생성 및 인증 단계 로직 수정 JwtProvider, UserAuthService에서 공통으로 사용되는 로직을 findValidUserByRefreshTokenOrAccessToken 메서드로 통합 * fix: 컬럼 관련 설정 오류 수정 * remove: 불필요한 주석 삭제 * chore: 주석 추가 * refactor: 인증 과정에서 유저 식별시 이력 시작 및 종료일시를 고려하여 현재 활성 사용자인지 검증 후, 유저 조회하도록 변경 * fix: Transactional 추가 * refactor: historyStartDateTime를 포함하지 않는 쿼리 메서드로 변경 * refactor: LocalDateTime.now() 의 변수명을 now로 변경 * fix: 테스트 코드 리팩터링 및 TODO 작성 * fix: Routine 테이블에서 User의 외래키를 삭제하고 userId 값으로 컬럼 값 수정 * feat: 서브루틴 테이블에 정렬순서(sortOrder) 필드 추가 * refactor: 서브루틴에 업데이트 대한 케이스 수정 * refactor: Jwt AccessToken으로 로그인했을 때 해당 유저를 조회하는 쿼리 메서드 변경 * remove: 불필요한 로직 삭제 * feat: Jwt 인증 관련 쿼리메서드 수정 * refactor: Jwt 관련 처리 기능들을 관리하는 Util 클래스로 명명 * refactor: 주석 변경 * refactor: 테스트 코드 주석 설정 * refactor: 루틴 업데이트 특정 케이스 수정 * [T3-98] 루틴 조회 API 수정 (#23) * feat: 변경 구분코드 추가 * feat: 루틴 조회 API * feat: 수정여부 컬럼 추가 * chore: 1차 배포 최종 init sql * fix: ddl 변경에 따른 수 * fix: ddl 변경에 따른 수정 * fix: 온보딩 API 수 * fix: 루틴 조회 쿼리파라미터로 수정 * fix: 홈 루틴 조회 API 수정 * [T3-106] 감정구슬 테이블 구축, API 개발 (#24) * feat: 감정구슬 테이블 구축, API 개발 * chore: 감정구슬 case 매 * remove: 불필요한 주석 제거 * remove: caseName 필드 삭제 * refactor: 스웨거 설정 보완 * feat: 루틴 완료여부 엔티티 클래스 추가 * feat: 루틴 완료여부 갱신 api에 필요한 request 객체 추가 * feat: 루틴 완료여부 갱신 서비스 로직 추가 * feat: 루틴 완료여부 갱신 api 추가 * feat: 루틴 삭제 시 deleteAt 설정 추가 * refactor: request 객체에서 필드명 변경 * feat: 주석 추가 * feat: 선택한 요일(당일)만 루틴을 삭제하는 서비스 로직 추가 * feat: 선택한 요일(당일)만 루틴을 삭제하는 API 추가 * refactor: reissue api response 수정 * fix: 스웨거 스펙 오류 수정 * refactor: JWT 인증 실패 시 response 형식 수정 * [T3-107] 홈 루틴 조회 API 수정 (#26) * fix: 홈 루틴 조회 API 내부 로직 수정(삭제이력 조회 제외, 완료여부 응답값 추가) * feat: 루틴 조회 응답값 추가(이력순번) * fix: 회원 탈퇴 로직에서 영속 상태로 설정 * feat: 데이터 정합성을 위해 검증 로직 추가 * [T3-108] 추천 루틴 조회 API (#28) * fix: OneToOne에서 ManyToOne으로 변 * feat: 추천 루틴 조회 API * feat: swagger 추가 * feat: 루틴, 서브루틴 완료 ID 응답값 추가 * fix: 감정 구슬 1일 1회 선택여부 확인 validation 추가 * fix: onboarding 명세 수정 * feat: 추천 루틴 조회시 응답에 감정구슬 enum 값 추가 * fix: 명세 추가 * fix: 명세 수정 * Feat/t3 108 (#29) * fix: OneToOne에서 ManyToOne으로 변 * feat: 추천 루틴 조회 API * feat: swagger 추가 * feat: 루틴, 서브루틴 완료 ID 응답값 추가 * fix: 감정 구슬 1일 1회 선택여부 확인 validation 추가 * fix: onboarding 명세 수정 * feat: 추천 루틴 조회시 응답에 감정구슬 enum 값 추가 * fix: 명세 추가 * fix: 명세 수정 * remove: tokenResponse * [T3-119] 홈 루틴 조회 응답값 추가 (#30) * fix: OneToOne에서 ManyToOne으로 변 * feat: 추천 루틴 조회 API * feat: swagger 추가 * feat: 루틴, 서브루틴 완료 ID 응답값 추가 * fix: 감정 구슬 1일 1회 선택여부 확인 validation 추가 * fix: onboarding 명세 수정 * feat: 추천 루틴 조회시 응답에 감정구슬 enum 값 추가 * fix: 명세 추가 * fix: 명세 수정 * remove: tokenResponse * feat: 루틴 조회 시 응답값 필드 추가 * chore: release tag 생성 자동화 --------- Co-authored-by: 정유석 <elwlahstmxjf@naver.com> Co-authored-by: 정유석 <83908712+yuseok0215@users.noreply.github.com>
1 parent 30e11bc commit 532f7fd

151 files changed

Lines changed: 7429 additions & 46 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
## 작업 내역
2+
3+
## 고민한 사항
4+
5+
## 리뷰 요청사항

.github/release-drafter-config.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name-template: 'v$RESOLVED_VERSION'
2+
tag-template: 'v$RESOLVED_VERSION'
3+
categories:
4+
- title: '🎁 새로운 기능이 추가되었어요'
5+
label: '🎁 feature'
6+
- title: '🐞 자잘한 버그를 수정했어요'
7+
label: '🔨 fix'
8+
- title: '🐬 코드를 개선했어요'
9+
label:
10+
- '📋 docs'
11+
- '🧼 refactor'
12+
- '🪄 chore'
13+
- '🎫 test'
14+
- '❌ remove'
15+
change-template: '- $TITLE #$NUMBER @$AUTHOR '
16+
template: |
17+
## 이번 버전의 변경사항은 아래와 같아요
18+
---
19+
$CHANGES
20+
no-changes-template: '변경사항이 없어요'
21+
version-resolver:
22+
major:
23+
labels:
24+
- '✨ major'
25+
minor:
26+
labels:
27+
- '✨ minor'
28+
patch:
29+
labels:
30+
- '- '✨ patch'
31+
default: patch

.github/workflows/cicd-workflow.yml

Lines changed: 99 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -47,28 +47,97 @@ jobs:
4747
echo "Current Directory: $(pwd)"
4848
ls -al
4949
50-
# 3. Gradle 실행 권한 부여
51-
- name: Grant execute permission for Gradle
52-
run: chmod +x ./gradlew
53-
54-
# 4. Gradle로 빌드
55-
- name: Build with Gradle
56-
run: ./gradlew clean build
57-
58-
# 5. AWS 자격 증명 구성
50+
# 3. AWS 자격 증명 구성
5951
- name: Configure AWS credentials
6052
uses: aws-actions/configure-aws-credentials@v2
6153
with:
6254
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
6355
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
6456
aws-region: ap-northeast-2
6557

66-
# 6. Amazon ECR에 로그인
58+
# # 4. AWS CLI 설치 (사전 설치되어 있지 않은 경우)
59+
# - name: Install AWS CLI (if not pre-installed)
60+
# run: |
61+
# sudo apt-get update
62+
# sudo apt-get install -y awscli
63+
64+
# AWS SSM으로 현재 redis의 포트 확인 커멘드 설정
65+
- name: Get Redis port from AWS SSM
66+
if: github.ref == 'refs/heads/develop'
67+
id: send_cmd
68+
run: |
69+
cmd_id=$(aws ssm send-command \
70+
--document-name "AWS-RunShellScript" \
71+
--targets "Key=instanceIds,Values=${{ secrets.EC2_INSTANCE_ID }}" \
72+
--comment "Deploy script via CI" \
73+
--parameters 'commands=[
74+
"if netstat -tuln | grep -q \":6379 \"; then echo 6379; \
75+
elif netstat -tuln | grep -q \":6380 \"; then echo 6380; \
76+
else echo none; fi"
77+
]' \
78+
--region ap-northeast-2 \
79+
--query "Command.CommandId" --output text)
80+
echo "cmd_id=$cmd_id" >> $GITHUB_OUTPUT
81+
82+
# AWS SSM 커멘드를 실행하여 현재 redis의 포트 확인 및 교체할 port 저장
83+
- name: Get Redis port command result
84+
if: github.ref == 'refs/heads/develop'
85+
id: get_cmd_result
86+
run: |
87+
redis_port=$(aws ssm get-command-invocation \
88+
--command-id ${{ steps.send_cmd.outputs.cmd_id }} \
89+
--instance-id ${{ secrets.EC2_INSTANCE_ID }} \
90+
--region ap-northeast-2 \
91+
--query 'StandardOutputContent' \
92+
--output text | tr -d '\n')
93+
echo "현재 열려있는 Redis 포트: $redis_port"
94+
if [ "$redis_port" = "6379" ]; then
95+
next_port="6380"
96+
elif [ "$redis_port" = "6380" ]; then
97+
next_port="6379"
98+
else
99+
next_port="6379"
100+
echo "Redis를 신규로 띄웁니다"
101+
fi
102+
echo "next_redis_port=$next_port" >> $GITHUB_OUTPUT
103+
104+
# 호스트 포트 수정
105+
- name: Update Redis hostPort in task-definition-dev.json
106+
if: github.ref == 'refs/heads/develop'
107+
run: |
108+
jq --arg port "${{ steps.get_cmd_result.outputs.next_redis_port }}" \
109+
'(.containerDefinitions[] | select(.name == "redis-dev").portMappings[] | select(.containerPort == 6379)).hostPort = ($port | tonumber)' \
110+
task-definition-dev.json > tmp.json && mv tmp.json task-definition-dev.json
111+
112+
echo "수정된 task-definition.json의 Redis portMappings:"
113+
jq '.containerDefinitions[] | select(.name == "redis-dev") | .portMappings[].hostPort' task-definition-dev.json
114+
115+
# - name: Update spring.data.redis.port in application.yml
116+
# if: github.ref == 'refs/heads/develop'
117+
# run: |
118+
# echo "Before modification:"
119+
# grep "spring.data.redis.port" config/dev/application-dev.yml
120+
#
121+
# sed -i "s/\(spring.data.redis.port:\).*/\1 ${{ steps.get_cmd_result.outputs.redis_port }}/" config/dev/application-dev.yml
122+
#
123+
# echo "After modification:"
124+
# grep "spring.data.redis.port" config/dev/application-dev.yml
125+
126+
127+
# 5. Gradle 실행 권한 부여
128+
- name: Grant execute permission for Gradle
129+
run: chmod +x ./gradlew
130+
131+
# 6. Gradle로 빌드
132+
- name: Build with Gradle
133+
run: ./gradlew clean build
134+
135+
# 7. Amazon ECR에 로그인
67136
- name: Login to Amazon ECR
68137
id: login-ecr
69138
uses: aws-actions/amazon-ecr-login@v2
70139

71-
# 7. Docker 이미지 빌드 및 태그, Amazon ECR에 이미지 푸시
140+
# 8. Docker 이미지 빌드 및 태그, Amazon ECR에 이미지 푸시
72141
- name: Build Docker image and tag, push image to Amazon ECR - release
73142
if: github.ref == 'refs/heads/release'
74143
id: build-image-release
@@ -87,7 +156,7 @@ jobs:
87156
docker push ${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.ap-northeast-2.amazonaws.com/${{ secrets.ECR_REPO_NAME_DEV }}:latest # 이미지를 ECR에 푸시합니다.
88157
echo "image=${{ secrets.AWS_ACCOUNT_ID }}.dkr.ecr.ap-northeast-2.amazonaws.com/${{ secrets.ECR_REPO_NAME_DEV }}:latest" >> $GITHUB_OUTPUT
89158
90-
# 8. Amazon ECS 태스크 정의에 새 이미지 ID 채우기
159+
# 9. Amazon ECS 태스크 정의에 새 이미지 ID 채우기
91160
- name: Fill in the new image ID in the Amazon ECS task definition - release
92161
if: github.ref == 'refs/heads/release'
93162
id: task-def-release
@@ -97,6 +166,13 @@ jobs:
97166
container-name: ${{ secrets.ECS_CONTAINER_NAME_PROD }}
98167
image: ${{ steps.build-image-release.outputs.image }}
99168

169+
- name: Mask ECS container name secret - release
170+
if: github.ref == 'refs/heads/release'
171+
run: |
172+
echo "ECS_CONTAINER_NAME_PROD is ${{ secrets.ECS_CONTAINER_NAME_PROD }}"
173+
echo "Container Names in task-definition-prod.json:"
174+
cat task-definition-prod.json | jq -r '.containerDefinitions[].name'
175+
100176
- name: Fill in the new image ID in the Amazon ECS task definition - develop
101177
if: github.ref == 'refs/heads/develop'
102178
id: task-def-develop
@@ -106,7 +182,7 @@ jobs:
106182
container-name: ${{ secrets.ECS_CONTAINER_NAME_DEV }}
107183
image: ${{ steps.build-image-develop.outputs.image }}
108184

109-
# 9. ECS에 배포
185+
# 10. ECS에 배포
110186
- name: Deploy to ECS - release
111187
if: github.ref == 'refs/heads/release'
112188
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
@@ -123,4 +199,13 @@ jobs:
123199
task-definition: ${{ steps.task-def-develop.outputs.task-definition }} # ECS 태스크 정의 파일을 지정합니다.
124200
service: ${{ secrets.ECS_SERVICE_NAME_DEV }}
125201
cluster: ${{ secrets.ECS_CLUSTER_NAME }}
126-
wait-for-service-stability: true # 서비스가 안정화될 때까지 대기합니다.
202+
wait-for-service-stability: true # 서비스가 안정화될 때까지 대기합니다.
203+
204+
# 11. release 브랜치에 배포 시 release 태그 생성 자동화
205+
- name: update release tag
206+
if: github.ref == 'refs/heads/release'
207+
uses: release-drafter/release-drafter@v5
208+
with:
209+
config-name: release-drafter-config.yml
210+
env:
211+
GITHUB_TOKEN: ${{ secrets.ACTION_TOKEN }}

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
HELP.md
2-
.gradle
2+
.gradle/
33
build/
44
!gradle/wrapper/gradle-wrapper.jar
55
!**/src/main/**/build/
-17 Bytes
Binary file not shown.
-17 Bytes
Binary file not shown.
-1 Bytes
Binary file not shown.
-17 Bytes
Binary file not shown.

.gradle/8.14/gc.properties

Whitespace-only changes.
-17 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)