개발을 하다보면 개발 옵션을 적용할 수 있는 applicaion.yml
을 사용하게 되는데, 배포 환경에 따라 다르게 적용할 필요를 느낄 때가 있다.
Develop
환경 / Release
환경 / Test
환경 등에서는 DB, server port 등이 다르게 쓰이는 경우에 Build시에 매번 applicaion.yml을 수정하기에는 번거롭고 실수를 할 가능성이 있다.
(수정하기에는 번거롭고 실수를 할 가능성이 있다.
이 말은 개발을 할 때 새로운 방법을 찾게하는 이유인 것 같다.)
applicaion.yml
spring:
profiles:
active: xxxx # local / develop / release / test 등 원하는 환경으로 변경하면 된다.
applicaion-local.yml
spring:
profiles: local
~~~
applicaion-develop.yml
spring:
profiles: develop
~~~
applicaion-release.yml
spring:
profiles: release
~~~
위와 같이 applicaion.yml
의 active
옵션을 환경에 맞게 바꾸면서 빌드하면 된다. 하지만, Springboot 2.7.6 버전 기준, Deprecated 된 방식이다. 찾아보니 Springboot 2.4 버전 이후로 바뀌었다.
개정된 방식은
applicaion-develop.yml
spring:
profiles:
active:
on-profile: develop
이렇게 특정 환경에 맞는 yml의 옵션 계층을 수정하면 된다.
applicaion.yml에 active 옵션에 따라 다른 profile이 적용됨을 확인할 수 있다.
https://baeji77.github.io/spring/dev/Java-application-yaml/
https://kor.pngtree.com/freepng/yaml-file-document-icon_4177017.html