Шаг условной сборки Jenkins ${GitLastCommit}!=${GIT_COMMIT}
Я унаследовал сервер Jenkins, поэтому я пытаюсь определить цель неудачного шага условной сборки:
Запуск сборки создает это исключение:
Exception caught evaluating condition: [org.jenkinsci.plugins.tokenmacro.MacroEvaluationException: Unrecognized macro 'GitLastCommit' in '${GitLastCommit}!=e2859cd109f46e889da99391f149ea68c20b1c75'], action = [Don't run]
Так что ценность GIT_COMMIT
заполняется, но GitLastCommit
не заполняется.
Так как это не работает, мне интересно, как поступить.
- Какова цель проверки на это?
- Если я должен сохранить это, то как мне обеспечить, чтобы
GitLastCommit
получает правильное значение?
1 ответ
Дженкинс не получил значение для переменной GitLastCommit, и именно поэтому вы получили вышеуказанную ошибку.
В качестве альтернативы, вы можете запустить приведенную ниже команду в Python,
git log --pretty="%H"
Приведенная выше команда в основном дает все идентификаторы коммитов текущего репозитория.
Вы можете положить в список (Python).
Используйте модуль os в python, чтобы создать новую переменную среды с именем GitLastCommit,
os.environ["GitLastCommit"] = <<Assign the required value from the list depending on your requirement>>
А затем введите эту переменную среды, чтобы вы могли использовать это значение в другом месте.