diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 74557f83eb10b..2e2930189e5ad 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -22,3 +22,6 @@ UIを変更した際は、変更がわかるような動画・スクリーンシ --> ## その他 + + +- [ ] 本PRは`--ff-only`でマージする。GitHubのUIでマージされるべきではない diff --git a/.github/workflows/ff-merge.yml b/.github/workflows/ff-merge.yml new file mode 100644 index 0000000000000..96a2e313e71dd --- /dev/null +++ b/.github/workflows/ff-merge.yml @@ -0,0 +1,35 @@ +# PRに`ff-merge`というラベルを付けると、このworkflowが起動して`--ff-only`なマージが行われる。 +# +# microsoft/onnxruntimeの変更を、CIのチェックとレビューを通し、かつ単純なコミットログの状態で取り込むことが目的。 +# microsoft/onnxruntimeのブランチ/タグを`git merge`したものをPRとして出し、それをこのworkflowで対象ブランチに取り込む。 + +name: FF merge +on: + pull_request: + types: + - labeled + +jobs: + merge-upstream: + runs-on: ubuntu-latest + if: github.event.label.name == 'ff-merge' + + steps: + - uses: actions/checkout@v3 + with: + ref: main + submodules: true + + - name: FF merge + shell: bash + run: | + # https://github.com/robotology/gh-action-nightly-merge/pull/13 + git config --global --add safe.directory "$GITHUB_WORKSPACE" + + git remote add target "https://x-access-token:${GITHUB_TOKEN}@github.com/$GITHUB_REPOSITORY.git" + + git fetch origin ${{ github.event.pull_request.head.sha }} + git merge --ff-only ${{ github.event.pull_request.head.sha }} + git push target main + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}