列出s3文件的Groovy脚本

问题描述 投票:1回答:1

我正在尝试建立Jenkins Jobs。我在哪里使用詹金斯的可扩展插件。该插件可以选择指定Groovy脚本。

[谁能帮我写出一些时髦的脚本,将文件列表提取到存储桶中。

我想使用jenkins中的文件名之一作为参数。

jenkins groovy jenkins-plugins jenkins-groovy
1个回答
0
投票

您可以使用我编写的此脚本,我将其用作Jenkins的“主动选择参数”

def sout = new StringBuilder(), serr = new StringBuilder()
def proc = 'aws s3 ls s3://bucket_name/'.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(2000)
def values = "$sout".split('/')
def trimmedValues
def parameters=[]
values.each {  println "${it}" }
def cleanValues = "$sout".split('PRE')
def last = cleanValues.last().split('2018-12-17')[0]
cleanValues.each {  "${it}".toString(); 
                    trimmedValues = "${it}".trim();
                    parameters<<trimmedValues
                 }
parameters.remove(parameters.size() - 1);
parameters.add(last)
parameters

“ 2018-12-17”的拆分是因为awscli

返回命令末尾的日期:

enter image description here

通过这种方式,我可以使用此参数来确定我要从存储桶中取出哪些工件/文件夹。enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.