Firebase Hosting是否提供可以收听的部署事件?

时间:2017-05-03 16:56:48

标签: firebase slack firebase-hosting

我希望能够收听Firebase Hosting,查看成功部署后会引发的事件。今天是否可以在Google Firebase平台上使用?计划创建部署事件处理程序以发送Slack webhook请求,其中包含有关成功部署的上下文信息。

1 个答案:

答案 0 :(得分:2)

firebase-tools最近添加了隐藏predeploypostdeploy进程的功能:

  

要设置部署挂钩,请将bash脚本添加到项目的firebase.json配置文件中。可以直接在文件中定义简短脚本,也可以引用项目目录中的文件。例如,以下是postdeploy脚本的firebase.json表达式,该脚本在成功完成部署到Firebase托管时发送Slack消息:

{
  "hosting": {
      "postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'"
  }
}
     

驻留在项目目录中的messageSlack.sh脚本如下所示:

curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}' https://<Slack_Webhook_URL>
     

对于您可以部署的任何资产 - 托管,功能,数据库,存储和防火库 - 您可以在firebase.json中添加predeploy和postdeploy挂钩,并且您的脚本将使用相应的部署命令运行。 predeploy和postdeploy挂钩都会将脚本的标准输出和错误流打印到终端。对于失败案例,请注意:

     

未能按预期完成预部署挂钩会取消部署。   如果部署因任何原因失败,则不会触发postdeploy挂钩。

     

来源 - Firebase CLI Reference