《GitHub Actions 入门》
GitHub Actions 简介
GitHub 的持续集成服务(2018年10月推出);
持续集成(Continuous integration,简称CI)
行为、操作 即 actions,一个独立脚本,可以存入远程代码仓库
action 引用方式
- userName/repoName 就表示 github.com/userName/repoName
workflow (工作流程)
持续集成一次运行的过程; GitHub Actions 的配置文件; 一个代码仓库可以有多个配置文件
存放在代码仓库的
.github/workflows
目录; workflow 文件采用 YAML 格式; 代码仓库自动运行这些配置文件
workflow 文件的配置字段
name: workflow 的名称 —> name: GitHub Actions Demo
on: 触发 workflow 的条件,通常是某些事件(代码库事件, 外部事件触发[, …]) —> on: [push, pull_request] | on: push
on:
push:
branches:
- master
jobs: 每一项任务的job_id
jobs:
# 每一项任务的job_id ~ my_first_job
my_first_job:
# name字段是任务的说明 ~ My first job
name: My first job
my_second_job:
name: My second job
needs: 指定当前任务的依赖关系
jobs:
# 每一项任务的job_id ~ my_first_job
my_first_job:
# name字段是任务的说明 ~ My first job
name: My first job
my_second_job:
name: My second job
# 指定当前任务的依赖关系 needs: my_first_job | needs: [my_first_job, needs: my_second_job]
needs: my_first_job
runs-on: 指定运行所需要的虚拟机环境, 它是必填字段 runs-on: ubuntu-18.04
# 虚拟机环境
ubuntu-latest,ubuntu-18.04或ubuntu-16.04
windows-latest,windows-2019或windows-2016
macOS-latest或macOS-10.14
steps: 指定每个 Job 的运行步骤,可以包含一个或多个步骤
name: Greeting from Mona
on: push
jobs:
my-job:
name: My Job
runs-on: ubuntu-latest
steps:
# 步骤名称 name
- name: Print a greeting
# 环境变量 env
env:
MY_VAR: Hi there! My name is
FIRST_NAME: yk-ddm
# 运行的命令或者 action
run: |
echo $MY_VAR $FIRST_NAME.
job (任务)
一个 workflow 由一个或多个 jobs 构成,含义是一次持续集成的运行,可以完成多个任务
github actions 配置文件的主体
step(步骤)
每个 job 由多个 step 构成,一步步完成
action (动作)
每个 step 可以依次执行一个或多个命令(action)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 yk-ddm!
评论