iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
自我挑戰組

用 Discord Bot 玩轉 DevOps 系列

本次主題將以 Discord Bot 為主角,從最簡單的通知,期許逐步加入測試回報、部署模擬,最後進化成能互動、能整合外部服務的 ChatOps 工具。

這 30 天的實作,我將展示如何把 GitHub Actions + Discord Bot 串起來,實踐 DevOps 的自動化流程,讓團隊能邊對話邊操作開發工作,打造出ChatOps

鐵人鍊成 | 共 30 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文
DAY 21

用BOT自動發 changelog(4)-部署(2)

昨天在部署時遇到了兩個問題導致頻頻失敗 audioop 模塊在 Render 的 Python 環境中缺失 audioop 是 Python 的標準庫模塊...

2025-10-04 ‧ 由 alpachennnnn 分享
DAY 22

用BOT自動發 changelog(5)-部署(3)

在上次部署完後的幾十分鐘裡bot都保持著上線,但後來我發現因為有免費方案的限制若超過一定時間沒使用,bot會進入冷卻狀態直到下次喚醒,為了解決這個問題,我打算用...

2025-10-05 ‧ 由 alpachennnnn 分享
DAY 23

用BOT自動發 changelog(6)

def run_scheduler(): """在背景執行排程(Render 環境優化版)""&quo...

2025-10-06 ‧ 由 alpachennnnn 分享
DAY 24

用BOT手動查看更新日誌

今天要做的功能是讓使用者可以自行輸入想要查詢的天數,例如查看 1 天內、3 天內或更多天前的 changelog,方便快速了解最近的更新內容 撰寫程式碼 de...

2025-10-07 ‧ 由 alpachennnnn 分享
DAY 25

功能模組化改造

目前已經實作出了多種功能,為了讓使用更直覺化,今天要將所有功能進行統一整合並模組化,讓結構更清晰,提升查詢效率 # 記錄控制面板訊息 ID(用於重啟時更新)...

2025-10-08 ‧ 由 alpachennnnn 分享
DAY 26

解構bot非同步程式設計基礎

在傳統的同步程式設計裡,假設Bot執行 !build_status 指令,要查詢建置的狀態,這時候整個 Bot 會被卡住等 GitHub API 回應。而等待的...

2025-10-09 ‧ 由 alpachennnnn 分享
DAY 27

非同步模式在bot的實戰應用

自動化排程 bot的其中一個功能就是自動化的每週檢查排程,設定每周一早上九點發送檢查結果,而這背後的運作原理來自於 Task 系統讓 Bot 能夠在背景執行...

2025-10-10 ‧ 由 alpachennnnn 分享
DAY 28

DevOps Bot 互動設計之旅

起初在開發這個Bot的過程中我只是想打造一個能管理GitHub專案的工具,但後面我發現,如果團隊成員需要記住一堆 !build_status、!pipeline...

2025-10-11 ‧ 由 alpachennnnn 分享
DAY 29

非同步 Bot 的定時難題

在開發 DevOps Bot 時,其實之中有存在一個問題,那就是我的bot整體是採用非同步的設計框架,但為了達到定時排程的功能,需要用到schedule 庫,這...

2025-10-12 ‧ 由 alpachennnnn 分享
DAY 30

DevOps Bot 開發心得

這 30 天的鐵人賽對我來說,不只是一次技術挑戰,準確來說是一個產品開發的挑戰,從最初的概念發想到最終的生產環境部署,每個階段都讓我對 DevOps 有了更深刻...

2025-10-13 ‧ 由 alpachennnnn 分享