name: Bump release version on: pull_request: branches: [rolling] types: - closed permissions: contents: write pull-requests: write repository-projects: write concurrency: production jobs: build: name: bump tag version and release if: github.event.pull_request.merged == true runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 with: ref: ${{ github.sha }} fetch-depth: 0 - name: Bump version and push tag id: version-bump uses: hennejg/github-tag-action@v4.3.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} release_branches: rolling - name: update cargo.toml run: | appversion=$(echo "${{ steps.version-bump.outputs.new_tag }}" | sed 's/[v]//') sed -i -e "s/^version = .*/version = \"$appversion\"/" Cargo.toml - uses: stefanzweifel/git-auto-commit-action@v5 # create PR using GitHub CLI - name: create PR with release info id: create-pr run: gh pr create --base main --head release-from-${{ github.sha }} --title 'Merge new release into main' --body 'Created by Github action' env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} # merge PR using GitHub CLI - name: merge PR with release info id: merge-pr run: gh pr merge --admin --merge --subject 'Merge release info' --delete-branch env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create Release uses: softprops/action-gh-release@v1 with: token: ${{ secrets.GITHUB_TOKEN }} generate_release_notes: true name: ${{ steps.version-bump.outputs.new_tag }} tag_name: ${{ steps.version-bump.outputs.new_tag }} prerelease: false env: GITHUB_REPOSITORY: ${{ github.repository }}