Skip to content

Merge release branch into main #6

Merge release branch into main

Merge release branch into main #6

name: Merge release branch into main
on:
workflow_call:
inputs:
version:
type: string
description: The release branch version to merge into main
required: true
repo:
type: string
description: The repository to create the PR (org/repo format)
required: true
workflow_dispatch:
inputs:
version:
type: string
description: The release branch version to merge into main
required: true
repo:
type: string
description: The repository to create the PR (org/repo format)
required: true
defaults:
run:
shell: bash
jobs:
merge-release-branch:
name: Submit PR to merge release branch into main
runs-on: ubuntu-latest
steps:
- name: Create PR
id: cpr
run: |
pr_url=$(gh pr create \
--title "chore: Merge release/${{ inputs.version }} into main" \
--body "Open new development line" \
--head release/${{ inputs.version }} \
--base main \
--label internal \
-R ${{ inputs.repo }} \
)
echo "pull-request-operation=created" >> $GITHUB_OUTPUT
pr_number="${pr_url##*/pull/}"
echo "pull-request-number=$pr_number" >> $GITHUB_OUTPUT
env:
GH_TOKEN: ${{ secrets.BOT_TOKEN_WORKFLOW }}
- name: Enable auto merge for the pull request
if: ${{ steps.cpr.outputs.pull-request-operation == 'created' }}
run: >
gh pr merge "${{ steps.cpr.outputs.pull-request-number }}"
--subject "chore: Merge release/${{ inputs.version }} into main (#${{ steps.cpr.outputs.pull-request-number }})"
--repo "${{ inputs.repo }}"
--auto
--merge
env:
GH_TOKEN: ${{ secrets.BOT_TOKEN_WORKFLOW }}
- name: Add the PR as annotation to workflow run
if: ${{ steps.cpr.outputs.pull-request-operation == 'created' }}
run: >
echo "::notice:: Created PR: https://github.com/${{ inputs.repo }}/pull/${{ steps.cpr.outputs.pull-request-number }}"