在認識過GitHub Actions後,接下來要講一個非常核心的東西--Workflow,因為 GitHub Actions 的自動化流程,Workflow扮演了不可或缺的角色
workflow是一個用YAML語法撰寫的自動化流程檔案,會存放在我們專案中創的.github資料夾裡
當觸發github actions時會自動執行workflow中的內容,如此一來將減少人工的操作提升效率,它可以應用於多元的場景例如:
Name
Workflow 的名稱,用來識別
name: CI Pipeline
on(觸發條件 / Events)
決定 Workflow 何時執行,例如:
on:
push:
branches: [ "main" ]
pull_request:
jobs(工作)
一個 Workflow 可以有多個 Job,而Job間可以平行執行也可以彼此相依
jobs:
build:
runs-on: ubuntu-latest
steps(步驟)
Job 裡的細節任務
steps:
- uses: actions/checkout@v3
- name: Run Tests
run: npm test
runner(執行環境)
可以是GitHub 提供的虛擬機(Linux, Windows, macOS),也可以自己架設 self-hosted runner