一千萬個為什麽

搜索

Heroku Slack集成而不使用Github



Heroku有一個很棒的Slack聊天機器人( chatops ),它可以讓您在部署管道成功時發送消息或失敗。不幸的是,在設置並登錄Heroku時,它會詢問您的github帳戶,並且不會讓您選擇其他DVCS提供商。

由於我使用Bitbucket,這讓我沒有管道通知的解決方案。過去有沒有人解決過這個問題?

轉載註明原文: Heroku Slack集成而不使用Github

一共有 1 個回答:

ChatOps使用 GitHub狀態檢查,所以它肯定是GitHub具體而且贏了與其他提供商合作。

但是,如果你剛剛收到通知,那麽Heroku的應用程序webhooks 呢?他們有一個新的應用程序版本的“實體”( api:release ),這可能對你有所幫助......至少你可以為成功發布設置通知。

或者,您可以聽取 api:build 實體的 create 事件以了解構建何時開始,以及 update 事件以了解其狀態何時更改 - 我沒有使用但是假設將包括一個字段,表示它是成功還是失敗。

要訂閱webhook,請使用Heroku CLI:

heroku webhooks:add --include api:build --level sync --url https://example.com/hooks

此處文檔中對此進行了更詳細的介紹。您收到的有效負載類似於

雖然這不會讓你直接進入Slack,所以你需要一塊中間件才能做到這一點。這是我從叉子分叉的小小的Sinatra應用程序。它將Docker Hub通知轉換為Slack對傳入webhook的預期格式。它應該很容易編輯,以使其轉換為Heroku webhooks。然後,瞧,這個小應用程序本身在Heroku上部署,這就是你在上面的webhook訂閱中堅持的URL。

這可能比您想要的步驟多得多。有人可能已經在某個地方做過了......但我可以說,至少按上述方式進行操作會讓您更靈活地在需要的地方創建自己的定制工作流程!