通过Webhook触发后,如何用eventId获取Spinnaker流水线详情?
通过Event ID查询Spinnaker流水线详情的可行方法
你目前使用的/pipelines?eventId=接口并不是Spinnaker用于查询流水线详情的正确端点,以下是两种有效的查询方式:
方法一:调用Execution API直接检索
Spinnaker的流水线执行实例(execution)会绑定触发它的eventId,你可以通过以下API获取匹配的流水线详情:
GET https://{spinnaker-url}/executions?eventId={你的eventId}
这个接口会返回所有关联该eventId的流水线执行记录,包含完整的状态、执行步骤、参数等信息。
方法二:结合流水线ID补充查询
如果上述接口无返回结果,可以按以下步骤排查:
- 先通过流水线名称或预设ID调用
/pipelines接口获取流水线模板信息 - 再调用
/executions?pipelineId={流水线ID}过滤该流水线的所有执行记录,从中核对eventId字段匹配的条目 - 同时确认请求携带了足够权限的API Token,权限不足也会导致查询失败
关键注意点
- 确保使用的eventId和Webhook返回的完全一致,你示例中查询用的
9883cv8-e39a-4da4-8175-342d1af32164和返回的5464h99-e39a-4da4-8175-342d1af32164不一致,这大概率是测试失败的原因 - 不同Spinnaker版本的API路径可能有差异,旧版本可能需要使用
/v2/executions作为接口前缀
内容的提问来源于stack exchange,提问作者vaibhavKhatal
相关产品推荐
相关产品推荐

