[英]Check date if matching then send yes to stringbuilder in groovy
我正在尝试为今天的部署发送时间表,因此我正在尝试比较日期,如果日期匹配,那么它应该“是”给 stringbuilder,如果它不匹配,那么它应该分别向 stringbuilder 发送“否”。 为此,我同样为 Jenkins 编写了 groovy 脚本-
echo "FIT2 Deployment started"
if(runConfig.FIT2Deploy){
FIT2Deploy = sb.append(padToLength('FIT2', 15)).append('|')
}
}
stage('Log Intent') {
echo runConfig.stringify()
}
String makeMarkFor(boolean bool) {
return (bool ? "Yes" : "No")
}
class RunConfig implements Serializable {
String padToLength(String initialValue, int length) {
String tmpVal = initialValue
while (tmpVal.length() < length) {
tmpVal = tmpVal + " "
}
return tmpVal
}
String centerPadToLength(String initialValue, int length) {
String tmpVal = initialValue
boolean atFront = false
while (tmpVal.length() < length) {
if (atFront) {
tmpVal = " " + tmpVal
} else {
tmpVal = tmpVal + " "
}
atFront = !atFront
}
}
String stringify() {
def sb = StringBuilder.newInstance()
sb.append('The following is the schedule for today ').append('|')
sb.append('\n================================\n')
sb.append(padToLength('Environment', 15)).append('|')
sb.append(padToLength(' Deploy', 8))
sb.append('\n--------------------------------\n')
//sb.append(padToLength('FIT2', 15)).append('|')
sb.append(centerPadToLength(makeMarkFor(FIT2Deploy), 8))
sb.toString()
}
}
您可以将padToLength('Environment', 15)
更改为'Environment'.padRight(15)
并摆脱您的padToLength
方法
您可以将centerPadToLength(makeMarkFor(FIT2Deploy), 8)
更改为makeMarkFor(FIT2Deploy).center(8)
并摆脱您的centerPadToLength
方法
然后查看您的代码,您可能需要makeMarkFor(runConfig.FIT2Deploy).center(8)
,但很难说,因为逻辑有点复杂,在不同的上下文中使用相同的变量名
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.