在 AWS S3 存储桶更改时触发 Spinnaker 管道

Trigger Spinnaker pipeline on AWS S3 bucket change

我需要我的 Spinnaker 管道触发对 AWS s3 存储桶的更改,特别是在添加或编辑文件时。

我找不到执行此操作的内置机制:触发器下拉列表中没有任何与 S3 存储桶相关的内容。

我想我可以使用订阅存储桶上 S3 事件的 AWS lambda 的 webhook,并将 lambda webhook 连接到 https://my_spinnnaker.mybiz.com/webhooks/webhook/s3_new。然而,似乎不可能将参数传递给钩子,例如新 S3 对象的键。

还有其他方法吗?

可以从触发Lambda函数的事件中读取S3 Object Key。事件记录具有 S3 对象键。 1

对于带参数的管道,从 Lambda 函数发送的请求可以在请求正文中包含参数值。有效载荷的格式如下所示。 2

{
  "parameters": {
    "<parameter-key>": "<parameter-value>"
  }
}