The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何讓 Node.js 應用程式在 GitHub Action 大幅提昇 CI/CD 執行效率

我手邊有個 Next.js 的應用程式,在設定 GitHub Action 的 CI/CD 自動部署到 Azure Web App 的過程,在 CI 的 actions/upload-artifact@v2 這個步驟花費了超級大量的時間上傳 node_modules 資料夾中的檔案,實在是太沒效率了。因此我改在上傳前壓縮整個目錄,結果整體 CI/CD 的時間直接從 26m 34s 降到 8m 58s 之多,部署效率大幅提升。今天這篇文章我就來說說我的寫法。

... 繼續閱讀 ...

如何避免 Pull request 的 Build Validation 同時觸發 Release 部署網站

我們過往設定 CI/CD 的時候,為了要避免 Pull request 的時候也不小心觸發 Release 部署網站,我們都會建立另外一組 Build pipeline 專門給 Pull request 時使用 ( 特定 Branch 的 Build Validation )。不過,這個額外的 Build pipeline 跟原本分支的 Build pipeline 完全一樣,額外維護這份 Pipelines 顯得非常多餘。我今天終於研究出正確的設定方式,所以這篇文章將來說明正確的設定方式。

... 繼續閱讀 ...

錯誤的 HintPath 也可以在 Visual Studio 中建置,但 CI 的時候可能不行

我在幫一個客戶 Code Review 並重構專案的時候,發現他們的專案在 Visual Studio 2019 都可以順利的建置專案,但是透過 Azure Pipelines 使用 MSBuild 建置卻會編譯失敗,錯誤訊息非常不清楚,真的是查了很久才想通問題的主因在哪裡,我覺得值得寫篇文章記錄一下。

... 繼續閱讀 ...

政府部門導入 DevOps 的挑戰與機會

在 2017 立冬之際,收到某個公部門資訊部邀約,希望我能前往分享 Git 版本控制。有趣的是,在講解 Git 版本控制的過程中,意外帶出該單位長久以來在系統委外管理上的困擾,從而演變成整場訓練大部分時間都在談 DevOps 的實務做法,大家相當踴躍的提出各種實務上遇到的問題,在一來一往問答的過程中,激盪出許多可以傳授的想法與觀念,而他們提出的各種問題,通通可以透過良好的 CI / CD 與 DevOps 規劃來解決!

... 繼續閱讀 ...