我致力于迁移现有的运行Maven和ant的Jenkins作业。詹金斯工作使用credentials-binding。
将一个变量设置为用户名,将一个变量设置为凭据中给出的密码。
插件设置以下变量:
运行构建作业时,蚂蚁echoproperties两次列出变量
;
切换到jenkins管道(声明式)时,凭据绑定的使用方式相同:
select * from temperatures where TIMESTAMPDIFF(HOUR, datetime, NOW()) <= 1 ;
但是这里的变量只能以01:26:21 [echoproperties] #Ant properties
01:26:21 [echoproperties] #Fri Aug 31 01:26:22 CEST 2018
01:26:21 [echoproperties] env.mgr.target.user=****
01:26:21 [echoproperties] mgr.target.user=****
的形式使用,而不能以withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'my.user',
usernameVariable: 'mgr.target.user',
passwordVariable: 'mgr.target.password']]) {
的形式使用
env.mgr.target.user
结果是构建作业失败,导致作为ant运行的maven / ant任务找不到属性mgr.target.user
我想了解为什么在一项工作中变量是可用的2,而在使用声明式管道时却没有。
很显然,可以将下面的maven / ant文件更改为使用现有变量,但这不是重点,因为-即使这些文件中没有任何更改-构建作业也无法作为声明性管道运行,但在使用旧版本时仍然可以通过工作。