diff --git a/.github/workflows/branch-merge.yml b/.github/workflows/branch-merge.yml new file mode 100644 index 0000000000000..5471c7239eb6d --- /dev/null +++ b/.github/workflows/branch-merge.yml @@ -0,0 +1,26 @@ +# See https://github.com/dotnet/arcade/blob/e52018a/Documentation/Maestro/New-Inter-Branch-Merge-Approach.md + +name: Branch merge +on: + workflow_dispatch: + inputs: + configuration_file_branch: + description: 'Branch to use for configuration file' + required: true + default: 'main' + configuration_file: + description: 'Path to configuration file to use to run the merge' + required: true + default: 'eng/config/branch-merge.jsonc' + +permissions: + contents: write + pull-requests: write + +jobs: + merge: + if: github.repository == 'dotnet/roslyn' + uses: dotnet/arcade/.github/workflows/inter-branch-merge-base.yml@main + with: + configuration_file_path: ${{ inputs.configuration_file }} + configuration_file_branch: ${{ inputs.configuration_file_branch || 'main' }} \ No newline at end of file diff --git a/eng/config/branch-merge.jsonc b/eng/config/branch-merge.jsonc new file mode 100644 index 0000000000000..b06a9f30e03b7 --- /dev/null +++ b/eng/config/branch-merge.jsonc @@ -0,0 +1,11 @@ +// Used by .github/workflows/scheduled-branch-merge.yml +{ + "merge-flow-configurations": { + // Merge main into feature branches + "main": { + "MergeToBranch": "features/collection-expression-arguments", + // ExtraSwitches is an optional parameter which is accepted by the script: https://github.com/dotnet/arcade/blob/main/.github/workflows/inter-branch-merge-base.yml. + "ExtraSwitches": "-QuietComments" + } + } +} \ No newline at end of file