一个非常新手的Jenkins问题,但我无法找到任何解决方案,可能是由于我对Jenkins的了解有限,可能无法理解可用的文档。我正在使用Jenkins中的S3publisher插件,并正确配置了此插件的aws凭据。但是,我无法使用此插件编写Jenkinsfile来上传文件。我在下面粘贴了一个截断的管道:
pipeline {
agent any
stages {
stage("publish to s3") {
steps {
//$class: 'S3BucketPublisher',
$class: 'S3Upload',
profileName: ‘myawsprofile’,
entries: [[
bucket: ‘mybucket’,
excludedFile: '',
flatten: false,
gzipFiles: false,
keepForever: false,
managedArtifacts: false,
noUploadOnFailure: false,
selectedRegion: 'us-iso-east-1',
howDirectlyInBrowser: false,
sourceFile: ‘myfile’,
storageClass: 'STANDARD',
uploadFromSlave: false,
useServerSideEncryption: false]]
}
}
}
}
}
我已经做了各种修改,在运行Jenkins管道时,我不断遇到org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed
错误。我看到的最新错误是:
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 27: unexpected token: S3Upload @ line 27, column 29.
$class: 'S3Upload',
有没有人遇到过这个之前,或让我知道我应该在哪里寻找一些更多的了解这个插件是如何通过Jenkinsfile应该工作?
2条答案
按热度按时间jobtbby31#
我还没有专门使用过这个插件,但是看一下文档,你可以尝试这样做:
如果这不起作用,你可以考虑使用Pipeline AWS插件,它更受欢迎,有更好的支持/文档。它也有能力做更多的事情,而不仅仅是处理S3,而且使用简单。对于你的特定情况,可以在这里找到相关的文档。另外,你可能会发现this answer很有帮助。因为它涉及到使用Pipeline AWS插件端到端地上传到S3。
u0njafvf2#
使用管道语法获取代码片段,我将其作为一个步骤发布到一个阶段中,如下所示: