flow.ci + Github + Slack 一步步搭建 Python 自動化持續整合

fir.im發表於2016-07-08

理想的程式設計師必須懶惰,永遠追隨自動化法則。Automating shapes smarter future.

在一個 Python 專案的開發過程中可能會做的事情:編譯、手動或自動化測試、部署環境配置等。這些操作是重複而枯燥的,如果是人工來一項一項做,會浪費大量時間,需要有一個高效的工具來幫我們完成。

這篇文章中我們用可執行的步驟告訴大家,如何用 flow.ci 從 GitHub 到 Slack 搭建簡單的 Python 自動化持續整合。

瞭解 flow.ci

flow.ci 是融入了 workflow 機制的持續整合(CI)服務,也可以理解為自動化流程平臺,除了整合程式碼、編譯、測試之外,還可以整合常用的工具、靈活自定義流程。1 分鐘即可完成開發測試環境搭建,開啟第一個 Build。

flow.ci,我們把專案的開發工作流稱為 flow ,每個 flow 由觸發器外掛構成。系統根據不同的語言和環境提供對應的 flow 模版,觸發器和外掛。Flow 的自定義非常簡單,只需要 One-Click 即可新增你需要的外掛。它可能是一個程式碼靜態分析檢測工具(比如 Eslint),可能是一個資料庫(比如 Mysql/MongoDB/Redis),也可能是一個訊息通知外掛(比如 郵件/Slack)等。

更專注於程式碼,其他的瑣事交給 flow.ci 自動化完成吧 :)

一步步搭建 Python 自動化持續整合

首先,開始建立專案:

1.建立專案

2.關聯程式碼倉庫

3.選擇要整合的專案

4.開始你的第一個 Flow

5.選擇專案語言

選擇專案語言 Python ,可以看到預設的 flow 模板 ,包括 Intialize - MySQL Database - Git Clone - Cache - Install - Test 的流程。

6.選擇語言版本,單擊建立專案

選擇專案語言的版本,除了 Python 外,flow.ci 提供 Node.js , Ruby , PHP , Java for Android 的多語言、多版本的開發測試環境。

後續會支援更多語言。

7.點選“+”新增外掛,自定義 flow

在環境和語言等初始配置完成後,flow.ci 會提供一套 基本 flow 模版,內含通用流程外掛和流程觸發設定。如果你有定製化的需求,點選圖中“+”或者“刪除”“編輯”,實時設定就可以。

8.在外掛列表中搜尋 Slack 外掛,並進行設定

到這裡,點選 slack notification 外掛,輸入 Slack Webhook 地址,就可以實時接收上線的任何訊息通知。除了 Slack 等團隊溝通外掛,你還可以自由新增更多的外掛。

9.Bingo!你的 Flow 已準備就緒。現在,提交程式碼開始 Build。

實現這套自動化流程之後,只需要開發新功能,提交程式碼即可。圖為跑完整個持續整合流程,健康的專案狀態。


繁瑣可循的任務就應該工具化自動化,這是程式設計師們的不懈追求。如果你也想快速搭建 Python 專案的自動化持續整合,來 http://flow.ci 首頁提交申請,邀請碼隨後會傳送到郵箱。

期待你的反饋。

Happy Building!

flow.ci team

相關文章