GitHub Action 的概念
Github action 可以幫助我們完成持續(xù)集成(CI)和持續(xù)部署(CD)。你可以自定義工作流程,而且你還可以引用github action 市場(chǎng)里面其他人提交的action??梢韵仁煜は乱韵赂拍睿?/p>
- Workflow: 工作流可以讓你在GitHub 上完成構(gòu)建,測(cè)試,打包,發(fā)布或部署任意項(xiàng)目。工作流由一個(gè)或者多個(gè)job組成。workflow file 文件放在.github/workflows這個(gè)目錄下面。
- job: 工作流由一個(gè)或者多個(gè)job組成,還可以在工作流中定義job的依賴(lài)順序。
- Step: 是一個(gè)單獨(dú)的步驟,可以是執(zhí)行某一個(gè)run 命令,或者一個(gè)action。一個(gè)job里面可以包含多個(gè)step。
- action: 是工作流中最小的可移植模塊,action 可以在社區(qū)共享。action需要step里面去執(zhí)行。
workflow file 文件介紹
workflow file 文件放在.github/workflows這個(gè)目錄下面。workflow 文件以YAML格式,
name 是workflow的名稱(chēng)
-
on: push 是觸發(fā)條件,在推送的時(shí)候觸發(fā),還可以指定分支
on: push: branches: - master runs-on: 是依賴(lài)虛擬環(huán)境runner
workflow 文件示例,發(fā)布vuepress 博客到github page.
name: Deploy GitHub Pages
# 觸發(fā)條件:在 push 到 master 分支后
on:
push:
branches:
- master
# 任務(wù)
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
persist-credentials: false
- name: install
run: yarn install
- name: Build
run: yarn build
- name: Deploy
uses: JamesIves/github-pages-deploy-action@releases/v3
with:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
REPOSITORY_NAME: aaronTang98/aaronTang98.github.io
BRANCH: master
FOLDER: public
- 上面yml的含義是
- 第一步拉取代碼
- 第二步 安裝
- 第三步 編譯
- 第四步 發(fā)送到github page的工程和目錄
secret 配置
這個(gè)示例需要將構(gòu)建成果發(fā)到 GitHub 倉(cāng)庫(kù),因此需要 GitHub 密鑰。按照官方文檔,生成一個(gè)密鑰。然后,將這個(gè)密鑰儲(chǔ)存到當(dāng)前倉(cāng)庫(kù)的Settings/Secrets里面。
上面的配置中引入了變量secrets.ACCESS_TOKEN,這個(gè)可以在repository里面選擇settings。

githubAction
- 在左邊的菜單選擇 Secrets.
- 點(diǎn)擊添加一個(gè)新的 secret.
- 輸入secret的名字,例如:ACCESS_TOKEN
- 輸入secret的值
- 點(diǎn)擊Add secret.