一个最简单的 Github workflow 例子
源代碼:
name: learn-github-actions on: [push] jobs:check-bats-version:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v2- uses: actions/setup-node@v2with:node-version: '14'- run: npm install -g bats- run: bats -vworkflow
工作流程是您添加到倉庫的自動化過程。
工作流程由一項或多項 jobs 組成,可以計劃或由事件觸發。
工作流程可用于在 GitHub 上構建、測試、打包、發布或部署項目。
本文例子里,我們創建了一個名稱叫做 learn-github-actions 的 工作流。
event
事件是觸發工作流程的特定活動。 例如,當有推送提交到倉庫或者創建議題或拉取請求時,GitHub 就可能產生活動。 您還可以使用倉庫分發 web 掛鉤在發生外部事件時觸發工作流程。 有關可用于觸發工作流程的事件的完整列表,請參閱觸發工作流程的事件。
本文例子,on: [push], 意思是有代碼 push 到 Github 倉庫時,觸發該工作流。
Jobs
作業是在同一運行服務器上執行的一組步驟的集合。 默認情況下,包含多個作業的工作流程將同時運行這些作業。 您也可以配置工作流程按順序運行作業。 例如,工作流程可以有兩個連續的任務來構建和測試代碼,其中測試作業取決于構建作業的狀態。 如果構建作業失敗,測試作業將不會運行。
本文例子,定義了一個叫做 check-bats-version 的作業。
steps
步驟是可以在作業中運行命令的單個任務。 步驟可以是操作或 shell 命令。 作業中的每個步驟在同一運行器上執行,可讓該作業中的操作互相共享數據。
一個作業可以包含多個步驟。
action 操作
操作是獨立命令,它們組合到步驟以創建作業。 操作是工作流程最小的便攜式構建塊。 您可以創建自己的操作,也可以使用 GitHub 社區創建的操作。 要在工作流程中使用操作,必須將其作為一個步驟,即放到一個 step 中去。
本文例子內包含的 actin 見下圖高亮:
runner
運行器是安裝了 GitHub Actions 運行器應用程序的服務器。 您可以使用 GitHub 托管的運行器或托管您自己的運行器。 運行器將偵聽可用的作業,每次運行一個作業,并將進度、日志和結果報告回 GitHub。 GitHub 托管的運行器基于 Ubuntu Linux、Microsoft Windows 和 macOS,并且工作流程中的每個作業都在新的虛擬環境中運行。
本文例子的工作流,通過 yml 文件里的定義:
runs-on: ubuntu-latest
工作于 Github 托管的 Ubuntu 服務器上。
代碼第7行:
- uses: actions/checkout@v2uses 關鍵字指示作業檢索名為 actions/checkout@v2 的社區操作的 v2。
這是檢出倉庫并將其下載到運行器的操作,允許針對您的代碼運行操作(例如測試工具)。 只要工作流程針對倉庫的代碼運行,或者您使用倉庫中定義的操作,您都必須使用檢出操作。
- uses: actions/setup-node@v2with:node-version: '14'安裝 Node.js 運行環境到托管服務器上,版本為 14
這個工作流邏輯的可視化版本如下:
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的一个最简单的 Github workflow 例子的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为m6屏幕供应商
- 下一篇: 明日之后换区要重玩吗