GitHub Actions 实现 Release 自动发版

2023-05-13· 25min

#一、配置Tokens、Secrets

#新增 Personal access tokens

  1. 打开:
    Settings
    ->
    Developer Settings
    ->
    Personal access tokens
  2. 新建:
    Tokens(classic)
    ->
    Generate new token

#配置 Project Actions secrets

  1. 打开:
    ${Your Repository}
    ->
    Settings
    ->
    Secrets and variables
  2. 新建:
    Secrets
    ->
    New repository secret

#二、配置workflows

  • 具体配置文件
    .github/workflows/release-please.yml
name: Create Release

permissions:
  contents: write
  pull-requests: write

on:
  push:
    tags:
      - v*

jobs:
  release-please:
    runs-on: ubuntu-latest
    steps:
      - name: ->actions/checkout@v4
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: ->pnpm/action-setup@v4
        uses: pnpm/action-setup@v4
        with:
          version: 9.12.3
          run_install: false

      - name: ->actions/setup-node@v4
        uses: actions/setup-node@v4
        with:
          node-version: lts/*
          cache: "pnpm"

      - name: ->install dependencies
        run: pnpm install

      - name: ->npx changelogithub
        run: npx changelogithub
        continue-on-error: true
        env:
          GITHUB_TOKEN: ${{secrets.RELEASE_TOKEN}}

      - name: ->googleapis/release-please-action@v4
        uses: googleapis/release-please-action@v4
        with:
          token: ${{secrets.RELEASE_TOKEN}}
          release-type: node

#三、执行流程

  1. Repository
    下提交
    tag
$ git tag v1.0.0
$ git push origin v1.0.0
  1. Github会自动执行相关 Action
  • 执行过程:自动生成 changelog、发版 release
  • 执行结果