FastlaneJenkins:一人團隊也用得上的Continuous Delivery 系統 | jenkins ios
本篇原文(標題:歡迎來到真實世界–ContinuousDelivery:在你睡覺的時候,電腦們可是都在勤奮地工作喔)刊登於作者部落格[1],由Neo所著並授權轉載。在iOS開發的世界,有個非常有趣、但也非常痛苦的地方,就是iOS的開發者需要的基本知識非常多。Cocoaframework本身就涵蓋了前端的UI邏輯,與資料庫等等的後端邏輯,既要注意頁面跟頁面之間狀態的處理,也要小心記憶體的運用,有時候還要學貝茲曲線跟3D轉場。雖然每一樣都不可能像各領域的專家一樣精通,但也算是工程師裡武器相當多的種族了。今天,想和大家分享身為iOS工程師,你可能還...
本篇原文(標題:歡迎來到真實世界 – Continuous Delivery:在你睡覺的時候,電腦們可是都在勤奮地工作喔)刊登於作者部落格[1],由 Neo 所著並授權轉載。在 iOS 開發的世界,有個非常有趣、但也非常痛苦的地方,就是 iOS 的開發者需要的基本知識非常多。Cocoa framework 本身就涵蓋了前端的 UI 邏輯,與資料庫等等的後端邏輯,既要注意頁面跟頁面之間狀態的處理,也要小心記憶體的運用,有時候還要學貝茲曲線跟 3D 轉場。雖然每一樣都不可能像各領域的專家一樣精通,但也算是工程師裡武器相當多的種族了。今天,想和大家分享身為 iOS 工程師,你可能還可以多學的技術:Continuous Delivery!身為一個工程師,你一定或多或少聽說過 Continuous Intgration 跟 Continuous Delivery (CICD);但是實際生活中,除非是跟一個團隊一起開發,不然應該很少有機會碰到 CICD 的概念。
所謂的 CI,就是在開發的過程中,我們需要隨時隨地確保 code 主幹處在可以一個發佈的狀態。也就是說,不能因為正在開發一個新功能,我們的主幹程式就無法運作或是打包新版本。而 CD指的,是我們希望在開發的任何一個階段,都能夠自動化打包出版本給需要的人使用。誰會是需要的人?在開發的過程中,工程團隊想要手動測試 App 時,就會需要一個 build 來測試;而在開發完畢後,UI 測試人員也會需要一個 build 來做測試。最後,在 App 要上線時,理所當然也會需要一個 build 來送到 iTunesConnect 上以供審核。
所以在系列作拖搞將近三個月後,今天我們要來介紹一個非常實用的技巧:如何做出一個專供 Apple 生態系使用的 CD 系統,讓你可以每天都提早五分鐘下班 (不算很吸引)。
如果還沒看過系列作的前面幾集,歡迎參考我的部落格[2],這個系列記載了教科書沒有的現實生活開發技術。
簡介我們會以下面的步驟來說明如何建立一個好用的 CD 系統,你隨時都可以直接跳到某個章節開始閱讀。
在這個 CD 系統中,我們選擇某種設計方式,而不選另一種的理由 任務簡介與基本的 Project 設定 手動化你的 code signing 用 Bun...