Description: 從建置、Cloudflare Workers 到部署驗證,拆解自動化越做越複雜的陷阱。
Introduction
只是更新網站,為何等了幾十分鐘,正式頁面卻毫無變化?有時候真正拖累進度的不是建置,而是部署前越加越多的檢查。
What is happening?
建置會把文章和程式整理成瀏覽器可使用的檔案。Cloudflare Workers負責回應請求,也能執行動態程式。GitHub Actions和Buildkite可以執行建置及部署指令。把這些問題一律說成「Worker停了」,反而難以定位故障。
The absurd failure
某個流程先向Worker確認能否發布,再切換最新程式、重新執行、檢查變更、查詢免費額度紀錄,最後產生報告。第一道檢查因額度用盡而逾時,系統跳過後又卡在下一道。正式網站完全沒更新,結果卻顯示「成功」。就像包裹還在倉庫,物流系統已經通知收件人簽收。
How to tell what failed
一百條紅色錯誤可能源自同一個共用檔案。反過來,建置成功也不代表正式網站已更新。應分開檢查建置、上傳與實際網址的版本。
A simpler route
精簡的方法是讓Worker發布只有一個正式指令,網站建置與上傳也只有一個入口。各種自動化工具都呼叫同一套指令。沒發布就回報失敗,發布後再核對正式版本。
Conclusion
原本想靠自動化省時間,最後卻得天天照顧自動化。真正需要的,可能不是更多監工,而是拆掉多餘的關卡。
