公司的CI就是抄Github Action语法的,学一下不亏。
术语
workflow
: 工作流程,持续集成一次运行的过程,就是一个 workflow。
job
: 任务,一个 workflow 由一个或多个 jobs 构成,含义是一次持续集成的运行,可以完成多个任务。多个任务之间并行执行。
step
: 步骤,每个 job 由多个 step 构成,一步步完成。
action
: 动作,每个 step 可以依次执行一个或多个动作(action)。
文件格式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| name: Git on: push: branches: - master - dev jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [12.x] steps: - uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }}
- name: Configuration environment env: HEXO_DEPLOY_PRI: ${{secrets.HEXO_DEPLOY_PRI}} run: | mkdir -p ~/.ssh/ echo "$HEXO_DEPLOY_PRI" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa ssh-keyscan github.com >> ~/.ssh/known_hosts git config --global user.name "git" git config --global user.email "git@git.com" - name: Install dependencies run: | npm i -g hexo-cli npm i - name: Deploy hexo run: | hexo clean && hexo generate && hexo deploy
|