张芷铭的个人博客

GitHub Actions 是 GitHub 官方 CI/CD 工具,无需自建服务器,直接在仓库内完成自动化构建、测试、部署。

核心概念

概念说明
Workflow工作流,一个完整的自动化流程,对应一个 .yml 文件
Job任务,Workflow 由一个或多个 Job 组成,默认并行执行
Step步骤,Job 由多个 Step 组成,串行执行
Action动作,封装好的可复用脚本/工具

目录结构

1
2
3
4
.github/
└── workflows/
    ├── test.yml
    └── deploy.yml

配置示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
name: Java CI/CD

on:
  push:
    branches: [main, dev]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: 拉取代码
        uses: actions/checkout@v4

      - name: 配置 JDK 17
        uses: actions/setup-java@v4
        with:
          java-version: '17'

      - name: 执行测试
        run: mvn clean test

      - name: 打包
        run: mvn package -Dmaven.test.skip=true

核心关键字

关键字作用
on触发条件(push、workflow_dispatch)
runs-on运行环境(ubuntu-latest、windows-latest)
uses调用现成 Action
run执行 shell 命令
with给 Action 传参

触发方式

1
2
3
4
5
6
7
# 推送触发
on:
  push:
    branches: [main]

# 手动触发
on: workflow_dispatch

Comments