Я хочу прочитать значение из файла свойств, разрешив замену переменных, например.
Имя файла моего свойства "app.txt", и содержимое будет выглядеть следующим образом
[app]
conf_link_1 = "https://bitbucket-global.com:8777/conf_1.git"
conf_link_2 = "https://bitbucket-global.com:8777/conf_2.git"
app_link_1 = "https://bitbucket-global.com:8777/app_1.git"
LINKS = ["${conf_link_1}","${conf_link_2}","${app_link_1}"]
My Jenkinsfile -
#!/usr/bin/env groovy
@Library(['jenkins_2GlobalLibrary@master']) _
(branchType, branchName) = env.BRANCH_NAME.tokenize('/')
node('java180u161-maven325-pythonanaconda352') {
stage ( 'Checkout' ) {
checkout scm
}
stage ('getting Links from app.txt file') {
def props = readProperties file: 'app.txt'
def CONFIG_LINK_TEST = props['LINKS']
echo "LIST OF LINKS = ${CONFIG_LINK_TEST}"
}
}
My Output -
LIST OF LINKS = ["${conf_link_1}","${conf_link_2}","${app_link_1}"]
Желаемый результат -
LIST OF LINKS = ["https://bitbucket-global.com:8777/conf_1.git","https://bitbucket-global.com:8777/conf_2.git","https://bitbucket-global.com:8777/app_1.git"]
Мой код не заменяет переменную, присутствующую в списке «ССЫЛКИ "присутствует в" app.txt "вместо этого он напрямую печатает значение.
Тот же код работает, если я помещаю все содержимое app.txt в свой Jenkinsfile. Что мне не нужно, потому что следующие config_link и app_links будут динамически обновляться другим заданием.
conf_link_1 = "https://<<dynamic_links>>"
conf_link_2 = ".."
app_link_1 = ".."
Пожалуйста, помогите мне с этим кодом.