バルクマージ&GothHub GitTubアクションでGithubプル要求を承認!



マイワークフロー
あなたはオープンソース管理者ですか?あなたのコミュニティから毎週貢献の数十を得るか?すべてを自動化したい人ですか?
昨年末、私はGomerge CLI tool . Gomergeは、すぐにバルクマージすることができますし、端末からいくつかのプル要求を承認するツールです.

地平線上のGackHubアクションHackathonで、私は機会を取り、GameMgeをそれ自身のカスタムGithubアクションに集中させると思いました.
The gomerge github action は現在利用可能ですgithub marketplace . また、直接Githubリポジトリにアクションを表示することができます.


提出カテゴリ
メンテーナは必要である

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

Cian911 / gomerge-action
Githubのアクションは、バルクのマージCLIツールを活用し、プル要求を承認します.
ゴマアクション
を利用したGithubアクションGomerge CLI tool , また、自分で、バルクマージに作成され、githubプル要求を承認します.
舞台裏では、GameMgeは以下の属性をチェックすることによってプル要求のmergeabilityを決定します

  • CIステータス(成功、保留、失敗)

  • 可憐な状態(クリーン、ブロック、汚れ)

  • 要求の状態を取得する
  • これらのメトリックのいずれかが有効な状態にない場合、プル要求は承認/マージされません.
    使い方と例
    あなたのリポジトリの承認/マージワークフローを自動化したい場合は、可能なユースケースの一覧を概説します.
    また、次の形式でラベルのリストを指定することもできますlabel1,label2... などのオプションを渡します.
    with
      labels: label1,label2

    This will filter all Pull Requests that only have the associated labels.


    Run action once a day at midnight to approve all valid Pull Requests.

    on
      schedule:
        - cron: 

    Github action which utilizes the Gomerge CLI tool, also created by myself, to bulk merge and approve github pull requests.

    Behind the scenes, Gomerge will determine the mergeability of a pull request by checking the following attributes:

    • CI Status (success, pending, failure)
    • Mergeable State (clean, blocked, dirty)
    • Pull Request State (open, draft, closed)

    If any of these metrics are not in a valid state, the pull request will not be approved/merged.

    Below I've outlined an example which will run the action at midnight every night and approve only valid pull requests.

    on:
      schedule:
        - cron: '0 0 * * *'
    
    jobs:
      approve-prs:
        runs-on: ubuntu-latest
        name: Approve valid PRs 
        steps:
          - name: Approve valid workflows
            uses: Cian911/[email protected]
            with:
              repository: ${{ github.repository }}
              github_token: ${{ secrets.GITHUB_TOKEN }}
              labels: ""
              approve: "true"
    

    追加情報
    詳細についてはgomerge-action github page 完全なリスト.また、私のテストレポを訪問することができます.gomerge-test アクションの動作例が含まれます.
    読んでくれてありがとう!