Разверните приложение Spring Boot в Heroku с определенным файлом application.properties - PullRequest
0 голосов
/ 04 мая 2019

Я хочу определить разные application.properties файлы для каждой среды. Работая локально, я хочу определить базу данных H2. Для тестовой среды (Heroku) у меня есть конфигурация базы данных MySQL. Таким образом, я хочу определить совершенно разные файлы для таких рабочих случаев.

В настоящее время у меня есть application.properties для местного porpouse и application-tst.properties для использования в Heroku. Но я не знаю, как выбрать правильный при развертывании.

Моя цель состоит в том, чтобы конфигурация моего приложения, работающего в Heroku, отличалась от конфигурации, запущенной на моем локальном компьютере.

1 Ответ

2 голосов
/ 04 мая 2019

Вы можете контролировать, какой профиль активен, используя свойство spring.profiles.active ( документация ). В Heroku вы можете установить это, используя конфигурационные переменные через cli, панель инструментов или API платформы

CLI

Для настройки профиля tst с помощью cli, попробуйте

$ heroku config:set SPRING_PROFILES_ACTIVE=tst

Приборная панель

Перейдите на вкладку settings и установите ключ как SPRING_PROFILES_ACTIVE и значение как tst, затем нажмите save.

Платформа API

Вы можете использовать несколько инструментов для достижения того же результата, но, следуя документации API платформы, вы можете использовать curl

$ curl -n -X PATCH https://api.heroku.com/apps/$APP_ID_OR_NAME/config-vars \
  -d '{ "SPRING_PROFILES_ACTIVE": "tst" }' \
  -H "Content-Type: application/json" \
  -H "Accept: application/vnd.heroku+json; version=3"

Имейте в виду, что установка свойства spring.profiles.active в качестве конфигурации var повлияет на все приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...