Переменная среды-заполнителя не внедряется в сценарий Flyway через сценарий конвейера Jenkins - PullRequest
0 голосов
/ 10 января 2020

Я определил переменную среды в конвейерном скрипте Jenkins, но эта переменная не обнаружена Flywayrunner. Интересно, что-то упускаю.

#!groovy

pipeline {
    agent any
    parameters {
        choice(name: "ENVIRONMENT", choices: "dev\ntest\nprod", description: 'Environment')
    }

    environment {
        FLYWAY_PLACEHOLDERS_ENV=params.ENVIRONMENT.toUpperCase()
    }

    stages {
        steps {
            flywayrunner
                installationName: "flywaytool",
                flywayCommand: "migrate",
                url: "jdbc:sqlserver://${DB_URL_DEV};databaseName=${DB_NAME};integratedSecurity=true;authenticationScheme=JavaKerberos;",
                credentialsId: "...",
                locations: "..."
        }
    }
}

Кроме того, я использую ${env} в сценарии. sql.

Когда я указываю заполнитель непосредственно в flywayrunner команда, заполнитель вводится в Flyway.

flywayrunner
    installationName: "flywaytool",
    flywayCommand: "migrate",
    url: "jdbc:sqlserver://${DB_URL_DEV};databaseName=${DB_NAME};integratedSecurity=true;authenticationScheme=JavaKerberos;",
    credentialsId: "...",
    locations: "..."
    commandLineArgs: "-placeholders.env=${FLYWAY_PLACEHOLDERS_ENV}"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...