Как использовать переменную окружения Jenkins в makefile - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть make-файл (GNUmake), в котором я хотел бы использовать номер текущей версии для некоторой операции. Лучший способ, о котором я мог подумать, это как-то заставить Jenkins экспортировать это как переменную среды, которая доступна в make-файле, когда идет сборка. Я знаю, что подобное возможно в Ant и Jenkins, но не уверен, как я могу добиться того же, используя makefile.

Может кто-нибудь, пожалуйста, руководство?

1 Ответ

0 голосов
/ 06 ноября 2018

Вы можете определить функцию, которая запускает команду оболочки (или make-файл, или все, что генерирует выходные данные) и возвращает этот вывод.

def getShellScriptResults() {
    def bashresult = sh(
        script: """
            # run here shell script or anything that generates output 
            echo "bashValue"
        """,
        returnStdout: true
    )
    return bashresult.trim()
}

Затем вызовите функцию и присвойте результат Groovy VAR, например:

node('mynode') {
    stage('Cloning repositories') {
        # call the function and capture the result to a groovy var
        res = getShellScriptResults()
        println(res)
    }
}
...