[英]Parsing file name for Dynamic Choice Parameter in Jenkins with a Groovy script
我正在尝试为Jenkins作业生成一个下拉菜单,它将从Linux目录中的文件名中解析出版本号。 我已经使其在大多数情况下都能正常工作,但我认为我对常规的知识不足使我处于停滞状态。 这是我的代码:
Arrays.asList(new File("/path/to/files").list().join(", ").findAll(/(\d+)\.(\d+)\.(\d+)\.(\d+)/))
我的文件名看起来像:
从Jenkins脚本控制台得到的回报是:
结果:[[1.0.0.19,1.0.0.20]]
这本质上就是我想要的,但是在詹金斯(Jenkins)工作中,我在下拉列表中得到了一项内容,即外部括号内的所有内容。
[1.0.0.19,1.0.0.20]
我认为第二个括号是问题,我尝试使用Groovy的.minus()方法将其删除,两次转义了括号,没有运气。 我也尝试过.split()方法,但是没有运气。
任何帮助将不胜感激!
您不需要Arrays.asList()
。 下面就足够了。
new File("/opt/staples/ci-tools/workspace/archive/returns")
.list()
.join(',')
.findAll(/(\d+)\.(\d+)\.(\d+)\.(\d+)/)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.