gpt4 book ai didi

jenkins - 我对 Jenkins 管道脚本有问题。类 WorkFlowScript 没有这样的属性

转载 作者:行者123 更新时间:2023-12-04 15:43:36 25 4
gpt4 key购买 nike

当我创建新工作时,这个工作的结果 jenkins 会发送到所有团队的电子邮件,但是当我们创建测试工作时(我们可以通过工作名称来理解),我们应该只向工作的创建者发送电子邮件。
确实如此,并且有效:

pipe(..){
timeout(..){
BuildEmailExt email = new BuilEmailExt(this, Emails.allTeams())
someCode..
}
}

然后我添加如果:
  pipe(..){
timeout(..){
if(env.JOB_NAME =~ /somePattern/){
BuildEmailExt email = new BuilEmailExt(this, SENDER)
}
else{
BuildEmailExt email = new BuilEmailExt(this, Emails.allTeams())
}
someCode..
}
}

我得到异常:没有这样的类属性电子邮件:WorkFlowScript
我究竟做错了什么?

最佳答案

通过在 if 中定义变量和 else ,它不存在于该范围之外,因此不能在条件之外访问。

您可以将定义移到 if 之外,然后像这样设置:

pipe(..){
timeout(..){
BuildEmailExt email
if(env.JOB_NAME =~ /somePattern/){
email = new BuilEmailExt(this, SENDER)
}
else {
email = new BuilEmailExt(this, Emails.allTeams())
}
someCode..
}
}

你也可以这样做看起来更干净(ymmv)
pipe(..){
timeout(..){
BuildEmailExt email = new BuilEmailExt(this, (env.JOB_NAME =~ /somePattern/) ? SENDER : Emails.allTeams())
someCode..
}
}

关于jenkins - 我对 Jenkins 管道脚本有问题。类 WorkFlowScript 没有这样的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56836058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com