Шаг условной сборки 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 не заполняется.

Так как это не работает, мне интересно, как поступить.

  1. Какова цель проверки на это?
  2. Если я должен сохранить это, то как мне обеспечить, чтобы 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>> 

А затем введите эту переменную среды, чтобы вы могли использовать это значение в другом месте.

Другие вопросы по тегам