Сценарий:
- У меня есть Java-приложение, которое необходимо собрать и упаковать с помощью Maven.
- Перед этапом сборки/упаковки необходимо заменить определенные значения конфигурации в зависимости от целевой среды (например, dev, test, prod).
- Например, в одном из файлов конфигурации Java заполнитель, такой как LOAD_BALANCE_URL, необходимо заменить значением, зависящим от среды, прежде чем приложение будет собрано и упаковано.
- Вводить или заменять значения конфигурации в процессе сборки Jenkins
- Убедиться, что применяются правильные значения в зависимости от целевой среды
- Избегать жесткого кодирования значений, специфичных для среды, в исходном коде код
Должен ли я использовать профили Maven, фильтрацию ресурсов, переменные среды Jenkins или другие передовые методы?
Будем признательны за любые примеры или рекомендации.
java code1
configuration.properties
LOAD_BALANCE_URL=
java code2
configuration.properties
USER_NAME=
config location in GIT
PROD_CONF.properties
LOAD_BALANCE_URL=http://PROD.server.com
USER_NAME=PROD_USER
UAT_CONF.properties
LOAD_BALANCE_URL=http://UAT.server.com
USER_NAME=UAT_USER
QA_CONF.properties
LOAD_BALANCE_URL=http://QA.server.com
USER_NAME=QA_USER