Jenkins 管道 - 如何将文件夹上传到 S3?

Jenkins Pipeline - How to upload folder to S3?

我认为,我有一个简单的用例,当 jenkins 构建静态网站时,所以在构建结束时,我有一个类似 $WORKSPACE/site-result 的文件夹。

现在我想将此文件夹上传到 S3(如果存储桶中已有内容,则清理存储桶)。我该怎么做?

我正在使用流水线,但如有必要可以切换到自由式项目。到目前为止,我安装了 S3 插件(S3 发布者插件)。创建的 IAM 用户。向 "Configure system" 部分添加了凭据。并且找不到任何进一步的信息。谢谢!

如果建议 Pipeline AWS 插件的答案不起作用,您始终可以在您的管道中有一个 upload 步骤,您可以在其中使用 sh 调用 AWS CLI:

aws s3 cp $WORKSPACE/site-result s3://your/bucket --recursive --include "*"

来源:http://docs.aws.amazon.com/cli/latest/reference/s3/

您必须使用 s3Upload 插件并将 sourceFile 参数设置为 '*/*'