我正在尝试使用Promotion Build插件执行shell脚本以获取有关maven属性的信息(POM_VERSION,POM_ARTIFACTID)。
麻烦是显示Jenkins环境变量的值,但有关maven属性的信息显示为空。我正在测试的项目是MVN项目。
echo $POM_ARTIFACTID
echo $POM_VERSION
echo $PROMOTED_JOB_NAME
tests
echo $JOB_NAME
tests/promotion
这些是我正在使用的版本:
编辑:添加以下问题陈述
麻烦在于定位生成war的路径,WAR文件具有以下文件名格式:/ var / lib / jenkins / workspace / $ PROMOTED_JOBNAME / target / $ POM_A RTIFACTID- $ POM_VERS ION.war所以,我需要有关pom_artifactID和pom_version的信息,以获取.WAR的路径并执行shell脚本。
答案 0 :(得分:0)
POM_ARTIFACTID,POM_VERSION未由提升的构建插件定义。有关公开的属性列表,请参阅this。更具体地说,“可用环境变量”部分。
当maven插件运行时,后期构建中可以使用POM版本和工件ID。我不认为pom版本可用于促进构建操作。请参阅Promotion Action
部分从问题陈述中,看起来build pipeline plugin或multijob插件更适合。
更具体地说,在multijob插件中,您可以使用build创建不同的阶段,将其部署为一个接一个地运行的不同阶段。从maven作业中,您还可以使用后期构建操作中的阶段参数将POM版本和artifactid传递给其他项目。