如何自动化更改日志和发布创建

How to automate change log and release creation

我想要 GitHub 在拉取请求合并到主控时创建更改日志和发布标签的操作 branch.The 我下面的当前代码似乎在乱序创建版本标签而不是创建版本。


name: Changelog & Releases
on:
 push:
   branches:
     - master

- name: Changelog Action
        id: changelog
        uses: TriPSs/conventional-changelog-action@v3
        with:
          github-token: ${{ secrets.GITHUB_TOKEN }} 

      - name: create release
        uses: actions/create-release@v1
        if: ${{ steps.changelog.outputs.skipped == 'false'}}
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          tag_name: ${{ steps.changelog.outputs.tag }}
          release_name: ${{ steps.changelog.outputs.tag }}
          body: ${{ steps.changelog.outputs.clean_changelog }}

这是一个有效的 Github Actions 工作流程,我将其用于我的一个发布管道。

这与您的用例完全相同。所以请放心使用它。

您正在使用的发布操作目前未维护,因此请使用我在下面的工作流程中提到的操作。

name: Release using conventional commits (master branch)

on:
  push:
   branches:
     - master

jobs:
  release:
   runs-on: ubuntu-latest

   steps:
    - name: checkout
      uses: actions/checkout@v2

    - name: conventional changelog action
      id: changelog
      # https://github.com/TriPSs/conventional-changelog-action
      uses: TriPSs/conventional-changelog-action@latest
      with:
        # you can also create separate token to trace action
        github-token: "${{ secrets.GITHUB_TOKEN }}"

    - name: create release
      # https://github.com/actions/create-release
      uses: softprops/action-gh-release@v1
      if: ${{steps.changelog.outputs.skipped == 'false'}}
      env:
        # This token is provided by Actions, you do not need to create your own token
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      with:
          tag_name: ${{ steps.changelog.outputs.tag }}
          name: ${{ steps.changelog.outputs.tag }}
          body: ${{steps.changelog.outputs.clean_changelog}}
          draft: false
          prerelease: false