- У нас есть первая настройка протестируйте его локально (это означает, что нам нужно установить MySQL на наш компьютер);
- затем мы отправим запрос на Bitbucket;
- Jenkins автоматически обнаруживает новую отправку на Bitbucket и выполняет сборку на ее основе (чтобы сборка Jenkins mvn прошла, нам также необходимо установить MySQL на виртуальные машины, на которых работает Jenkins).
- если сборка Jenkins проходит успешно, мы передаем код в наше приложение на OpenShift (используя плагин развертывания Openshift на Дженкинсе).
- в application.properties мы не можем жестко закодировать информацию MySQL. Поскольку наш проект будет работать в трех разных местах (local, Jenkins и OpenShift), нам необходимо сделать поле источника данных динамическим в приложении. .properties (мы знаем, что есть разные способы сделать это, но сейчас работаем над этим решением).
Код: Выделить всё
spring.datasource.url = spring.datasource.username = spring.datasource.password =
Код: Выделить всё
export OPENSHIFT_MYSQL_DB_HOST="jdbc:mysql://localhost"
export OPENSHIFT_MYSQL_DB_PORT="3306"
export OPENSHIFT_MYSQL_DB_USERNAME="root"
export OPENSHIFT_MYSQL_DB_PASSWORD="123asd"
Код: Выделить всё
String password = env.get("OPENSHIFT_MYSQL_DB_PASSWORD");
String userName = env.get("OPENSHIFT_MYSQL_DB_USERNAME");
String sqlURL = env.get("OPENSHIFT_MYSQL_DB_HOST");
String sqlPort = env.get("OPENSHIFT_MYSQL_DB_PORT");
В какой папке и как нам нужно назначить переменные пароля, userName, sqlURL и sqlPort для application.properties > чтобы иметь возможность их видеть и как включить их в application.properties?
Мы попробовали много вещей, одна из них:
Код: Выделить всё
spring.datasource.url = ${sqlURL}:${sqlPort}/"nameofDB"
spring.datasource.username = ${userName}
spring.datasource.password = ${password}
Подробнее здесь: https://stackoverflow.com/questions/355 ... properties