Create a draft release on 'Cut release' PR merge (#2238)

* WIP: automate release, get PR info from commit

* Get version from PR title in script

* Add create release script call under comment, will wait for next release to test

* Test with v0.19.0

* Change to draft

* Clean up after v0.19.0 test

* Test for v0.19.1

* Clean up after test

---------

Co-authored-by: Jess Frazelle <jessfraz@users.noreply.github.com>
This commit is contained in:
Pierre Jacquier
2024-04-26 05:04:58 -04:00
committed by GitHub
parent ed0c7d038d
commit 67cea620a6

37
.github/workflows/create-release.yml vendored Normal file
View File

@ -0,0 +1,37 @@
name: Create Release
on:
push:
branches:
- main
jobs:
create-release:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: read
if: contains(github.event.head_commit.message, 'Cut release v')
steps:
- uses: actions/github-script@v7
name: Read Cut release PR info and create release
with:
script: |
const { owner, repo, sha } = context.repo
const pulls = await github.rest.repos.listPullRequestsAssociatedWithCommit({
owner,
repo,
commit_sha: sha,
})
const { title, body } = pulls.data[0]
const version = title.split('Cut release ')[1]
const result = await github.rest.repos.createRelease({
owner,
repo,
body,
tag_name: version,
name: version,
draft: true,
})
console.log(result)