Jenkins条件构建步骤$ {GitLastCommit}!= $ {GIT_COMMIT}

时间:2015-11-02 16:20:23

标签: git jenkins custom-build-step

我继承了Jenkins服务器,所以我试图确定条件构建步骤失败的目的:

enter image description here

运行构建会产生以下异常:

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 个答案:

答案 0 :(得分:0)

Jenkins没有得到GitLastCommit变量的值,这就是你得到上述错误的原因。

或者你可以做的是在python中运行以下命令,

git log --pretty="%H"

上面的命令基本上给出了当前存储库的所有提交ID。

你可以放入一个列表(python)。

使用python中的os模块创建一个名为GitLastCommit的新环境变量

os.environ["GitLastCommit"] = <<Assign the required value from the list depending on your requirement>> 

然后inject this environment变量,以便您可以在其他地方使用此值。

相关问题