spring profile을 application.properties
로만 하다가 이번엔 application.yml
로 설정해보기로 했다.
spring boot 2.4 버전 이후 설정 파일에 변화가 있다고 한다.
spring.profiles
가 deprecated 되고 spring.config.activate.on-profile
로 변경됨spring:
profiles:
group:
local: localdb,common
dev: devdb,common
---
spring:
config:
activate:
on-profile: localdb
data:
mongodb:
database: *****
username: *****
password: *****
host: 127.0.0.1
port: 27016
---
spring:
config:
activate:
on-profile: devdb
data:
mongodb:
database: *****
username: *****
password: *****
host: {rds주소}
port: 27017
---
spring:
config:
activate:
on-profile: common
jpa:
database-platform: org.hibernate.dialect.PostgreSQLDialect
show-sql: true
hibernate:
ddl-auto: create
server:
port: 18081
logging:
level:
org:
springframework:
data:
mongodb:
core:
MongoTemplate: DEBUG
local
과 dev
로 group을 나누고 세부 프로파일은 localdb
, devdb
, common
부분으로 나누었다.
local
로 실행시 localdb
와 common
프로파일을 가지고 실행,
dev
로 실행시 devdb
와 common
프로파일을 가지고 실행한다.
빌드 방법 1.
$ ./gradlew clean build
빌드 방법 2. build시 profile이 필요한경우
$ SPRING_PROFILES_ACTIVE=local ./gradlew clean build
빌드 방법 3. test code 건너뛰고 build할 경우
$ ./gradlew clean assemble
실행 방법 1.
$ java -jar build/libs/***.jar --spring.profiles.active=local
$ java -jar build/libs/***.jar --spring.profiles.active=dev