我的目标是编写一个脚本,将我们的 Heroku 管道中的“阶段”应用程序推广到生产环境,但前提是要推广任何更改。
我可以通过以下方式毫无问题地进行推广:
// POST /pipeline-promotions
{
"pipeline": {
"id": "<pipeline-id>"
},
"source": {
"app": {
"id": "<stage-app-id>"
}
},
"targets": [
{
"app": {
"id": "<production-id>"
}
}
]
}
我的问题是,如果我执行此操作,但不存在任何更改,发布操作仍会在生产应用程序上启动。
换句话说,我如何确定是否有任何更改可用于升级 - 就像 heroku 在其 GUI 中所做的那样?