Closed iamabear09 closed 7 months ago
[생각 정리] 현재 계획 상 App은 Dockerfile 로 감싸지 않는다. Github Action이 제공하는 Host에서 test & build를 진행한다.
docker-compose
를 통해 MySQL을 띄우고만약 App도 Dockerfile로 감싸면...?
[궁굼증 확인 및 테스트]
Github Host에서 docker
와 docker-compose
는 기본적으로 사용 가능하다.
[생각 정리]
즉, Local과 CI용 설정이 다르다. 따라서, 테스트 설정파일을 2개로 분리한기로 결정했다. CI용 설정 파일은 default 설정 파일을 사용하고, Local용 설정 파일은 application-dev.yml 을 사용한다.
[궁굼증 확인 및 테스트]
test/resources
에 application.yml
/ application-dev.yml
두 개가 있다면, 어떻게 ./gradlew test
시 어떻게 profile을 설정할 수 있을까?
spring.profiles.active = dev
를 설정하고 test를 실행하면 될 것 같다.그런데 두 개의 application.yml
application-dev.yml
가 존재하면 어떻게 실행이 되는 거지?
application.yml
에 sql-format: true
설정 & profile dev
설정 → sql-format: true
동작
application.yml
에 sql-format: true
설정 & application-dev.yml
에 sql-format: false
설정 profile dev
설정 → sql-format: false
동작
결론 : 프로필을 설정해도 기본 파일은 동작한다.
yaml
파일 환경변수 - " "
존재 유무 차이yaml
은 기본적으로 " "
없어도 문자 인식한다." "
가 필요하다.${ }
를 사용할 때, 어떠한 값이 들어올지 모르므로 "${ }"
와 같이 설정하는 것이 더 좋은 선택이라고 생각된다." "
를 사용하는 것이 좋은 선택인 것 같다.참고 :: yaml spec 공식문서
구현 사항
f-lab-edu / self-monitoring 의 main branch 로
pull request
가merge
될 때마다 자동으로 test & build가 수행되도록 Github Action 을 사용하여 CI 서버를 구축한다.공부 방향
목표 달성 과정 계획
[x] 기본적으로 MySQL을 Docker Compose를 사용하여 띄울 수 있어야 한다.
[x] Github action에서 docker-compose script를 통해 MySQL Container 를 띄우는 방법을 공부해야 한다.
[x] Github action에서 설정 값(주로 환경 변수) 를 docker container에 주입할 수 있어야 한다.
[x] Github action에서 해야 하는 일 (현재 생각)