tre*_*rey 2 amazon-s3 jenkins jenkins-plugins
我正在尝试在Jenkins 2.0管道中使用带有Jenkinsfile 的S3插件.不幸的是,管道语法助手似乎不是很完整.
我得到以下代码:
step([$class: 'S3CopyArtifact', buildSelector: [$class: 'StatusBuildSelector', stable: true], excludeFilter: '', filter: 'deploy/*.zip', flatten: false, optional: false, projectName: 'my/project/with/folders', target: '/my/directory/'])
Run Code Online (Sandbox Code Playgroud)
当然这还不够,因为缺少凭据和存储桶.另外,这个插件似乎与Folders插件的行为不正确.
有人有这方面的提示吗?
小智 7
我同意你的原始声明,因为脚本生成太伤心了.即使您S3BucketPublisher
选择了它,它也不足以继续下去.请参阅下面的我的代码段.它假定您已在系统配置中创建了配置文件.
stage("publish to s3") {
step([
$class: 'S3BucketPublisher',
entries: [[
sourceFile: 'mybinaryFile',
bucket: 'GoBinaries',
selectedRegion: 'eu-west-1',
noUploadOnFailure: true,
managedArtifacts: true,
flatten: true,
showDirectlyInBrowser: true,
keepForever: true,
]],
profileName: 'myprofile',
dontWaitForConcurrentBuildCompletion: false,
])
}
Run Code Online (Sandbox Code Playgroud)
小智 5
对于更简单的用例,现在在Pipeline AWS Plugin中支持此功能,如下所示:
s3Upload(file:'someFolder', bucket:'my-bucket', path:'/path/to/targetFolder/')
djsd123的示例非常适合更高级的用例。如果您还想向您的对象添加元数据标签,则可以添加userMetaData数组:
profileName: 'myprofile',
dontWaitForConcurrentBuildCompletion: false,
userMetadata: [[ key: 'git_branch', value: "${env.BRANCH_NAME}"],
[ key: 'build_number', value: "${env.BUILD_NUMBER}"]
],
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9639 次 |
最近记录: |