ChangeLog - ci (コミットおよび/またはコメント自動生成されたchangelogをアクションを使用してPRにする)


マイワークフロー


私は、Changelog CIと呼ばれる最初のオープンソースGithubアクションを作成しました.
これはChangeLogを生成し、それをCHANGELOG.mdファイルに先行し、コミットおよび/またはリリースプル要求にコメントします.
生の例:Changelog CI's Changelog

提出カテゴリ


メンテーナは必要である

YAMLファイルまたはコードへのリンク

Changelog CIのリンクはこちら
githubリポジトリ

SAADMK 11 / 変更履歴


ChangeLog ciはchangelogを生成するgithub actionで、changelogはリリースプル要求にコミットされ、コメントされます。








ChangeLog CIとは


changelog ciはchangelogを生成するGithubアクションです
その後、changelogは
および/またはリリースプル要求にコメントします.

どうやって動くの


ChangeLog CIは、CHANGELOG.mdpythonを使用して、倉庫のchangelogを生成します
まず、リポジトリからGitHub APIを取得しようとします(利用可能ならば)
それから、それはGithub APIを使用している最後のリリースの後、合併したすべてのプル要求をチェックします.
その後、データを解析し、latest releaseを生成する.最後に
生成されたchangelogをchangelog(またはユーザが提供するファイル名)ファイルの先頭に書き込みます.
それに加えて、ユーザーがconfig(JSONファイル)を提供する場合、ChangeLog CIは、ユーザーが提供する設定ファイルを解析します
そして、ユーザ設定に従ってchangelogをレンダリングします.
変更がコミットされ、リリースプル要求にコメントされます.

使用法:


このアクションを使用するにはプル要求.
View on GitHub
市場
https://github.com/marketplace/actions/changelog-ci

追加情報


Changelog CIは新しいオープンソースのアクションです.現在、私のオープンソースプロジェクトはそれを使います.
たとえば、django-newsfeedbanking-systemはそれを使用します.
この出力はCHANGELOG.md CHANGELOG.md
ChangeLog CI自体はこのアクションを使用してChangelogを生成します.

どうやって動くの


ChangeLog CIは、changelog-cipythonを使用してリポジトリのchangelogを生成します.
まず、リポジトリからGitHub APIを取得しようとします.
それから、それはGithub APIを使用している最後のリリースの後、合併したすべてのプル要求をチェックします.その後、データを解析し、latest releaseを生成する.最後に、生成されたchangelogをchangelog(またはユーザが提供するファイル名)ファイルの先頭に書き込みます.それに加えて、ユーザーがconfig(JSONファイル)を提供している場合、ChangeLog Ciはユーザーによって提供されている設定ファイルを解析し、ユーザー設定に従ってchangelogをレンダリングします.その後、変更はコミットされ、リリースプル要求についてコメントします.

使用法:


このアクションを使用するには、プル要求のタイトルは、設定ファイルから既定242479142またはユーザー提供CHANGELOG.mdと一致する必要があります.
デフォルトのタイトル正規表現: regex ( title "title "with "release "(大文字小文字を区別しません))
デフォルトのバージョン番号regex :これは regex (Semantic Versioning)パターンに従います.例えば、^(?i)releaseSemVer1.0.0など.
セマンティックバージョン管理パターンの詳細については、このリンクに移動します
注242479152

https://regex101.com/r/Ly7O1x/3/ ChangeLog CIを使用したワークフローの例


name: Changelog CI

# Controls when the action will run. Triggers the workflow on pull request
on:
  pull_request:
    types: [opened, reopened]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      # Checks-out your repository
      - uses: actions/checkout@v2

      - name: Run Changelog CI
        uses: saadmk11/[email protected]
        with:
          # Optional, you can provide any name for your changelog file.
          # defaults to ``CHANGELOG.md`` if not provided.
          changelog_filename: CHANGELOG.md
          # Optional, only required when you want more customization
          config_file: changelog-ci-config.json
        env:
          # Optional, Only required for ``private`` repositories
          # and required if the changelog comment 
          # option is turned on through the config file
          GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
ChangeLog CIバッジ
you can provide your own regex through the config file
バッジを表示するには、readmeに追加します.
![Changelog CI Status](https://github.com/<username>/<repo_name>/workflows/Changelog%20CI/badge.svg)

設定ファイルを使用したchangelogの出力例


ChangeLog CI用の設定ファイルについてもっと学びましょう
Changelog CI Status

バージョン0.0.2


READMEMD バグフィックス


  • : README
  • を更新し続ける

  • :再び同じREADMEファイルを更新する

    菅53 新機能


  • #54 : README更新.MD
  • ドキュメント更新


  • #68 :ドキュメント更新
  • バージョン: 0.0.1


    菅66 バグフィックス


  • : README
  • を更新し続ける

  • :再び同じREADMEファイルを更新する

    菅53 ドキュメント更新


  • #54 :ドキュメント更新
  • 設定ファイルを使用せずにchangelogの出力例


    菅66 バージョン0.0.2


  • : README
  • を更新し続ける

  • :再び同じREADMEファイルを更新する

  • #53:Readme更新
  • 菅54 バージョン: 0.0.1


  • #55 :テストが終わらないような気がする

  • :もう一度、もう一度
  • をテストすること

  • #43 :これはまた別のテストで、疲れた
  • です

  • #35:これは再び別のテスト
  • です

    菅44 ChangeLog ci in action (コメント&コミット)


    #37

    結論


    これはオープンソースのメンテナにとって本当に役立つでしょう.興味がある方はを試してみてください.