更新s3存储桶时Jenkins作业触发器

arknldoa  于 2022-11-21  发布在  Jenkins
关注(0)|答案(1)|浏览(121)

我正在寻找一种方法来触发Jenkins作业时,s3桶是更新与特定的文件格式。
我已经尝试了一个lambda函数的方法“Add trigger -〉s3 bucket PUT方法”。我已经遵循了这个article。但是它不工作。我已经探索了,我发现“AWS SNS”和“AWS SQS”也可以用于此,但是问题是有些人说这是过时的。那么,当s3 bucket更新时,哪一个是触发Jenkins作业的最简单的方法呢?
我只是想要一个触发器,每当zip文件从jenkins 1中的作业A更新到AWS enviornment 2中名为“testbucket”的S3存储桶名称时。两个Jenkins都在不同的AWS帐户下,位于单独的私有VPC下。我已将Jenkins工作流作为图片附上。请参考下图。x1c 0d1x

o0lyfsai

o0lyfsai1#

你使用的方法看起来很可靠,是一个很好的方法。我不知道你有什么具体的问题,所以我会列出一些事情来解释为什么这可能不适合你:

  • 权限问题-检查以确保Lambda可以被S3服务调用。如果你在控制台中手动调用Lambda,那么你可能不必担心这个问题,因为权限应该是自动设置的。如果你通过基础设施作为代码来调用Lambda,那么你需要添加一些内容。
  • Lambda VPC config -您的lambda需要运行在您的VPC中Jenkins示例运行的同一个子网中。默认情况下,Lambda不会与VPC关联,也不会访问Jenkins示例(除非它在互联网上公开可用)。

我发现了另一个stackoverflow帖子,它描述了SNS/SQS设置,如果你想继续沿着Trigger Jenkins job when a S3 file is updated的路径前进

相关问题