mirror of https://github.com/hpcaitech/ColossalAI
[workflow] added workflow to auto draft the release post (#1144)
parent
18091581c0
commit
d1918304bb
|
@ -0,0 +1,42 @@
|
||||||
|
name: Draft GitHub Release Post
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
pull_requests:
|
||||||
|
paths:
|
||||||
|
- 'version.txt'
|
||||||
|
types:
|
||||||
|
- closed
|
||||||
|
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
name: Draft Release Post
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: '3.7.12'
|
||||||
|
- name: generate draft
|
||||||
|
id: generate_draft
|
||||||
|
run: |
|
||||||
|
version=v$(cat version.txt)
|
||||||
|
pip install requests
|
||||||
|
python ./.github/workflows/scripts/generate_release_draft.py --out $PWD/release_draft.md --version $version
|
||||||
|
echo "::set-output name=version::$version"
|
||||||
|
echo "::set-output name=path::$PWD/release_draft.md"
|
||||||
|
- name: Create Release
|
||||||
|
id: create_release
|
||||||
|
uses: actions/create-release@v1
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
|
||||||
|
with:
|
||||||
|
tag_name: ${{ steps.generate_draft.outputs.version }}
|
||||||
|
release_name: Version ${{ steps.generate_draft.outputs.version }} Release Today!
|
||||||
|
body_path: ${{ steps.generate_draft.outputs.path }}
|
||||||
|
draft: True
|
||||||
|
prerelease: false
|
||||||
|
|
|
@ -13,6 +13,7 @@ TAGS_API = 'https://api.github.com/repos/hpcaitech/ColossalAI/tags'
|
||||||
def parse_args():
|
def parse_args():
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument('--out', type=str, help='output path for the release draft', required=True)
|
parser.add_argument('--out', type=str, help='output path for the release draft', required=True)
|
||||||
|
parser.add_argument('--version', type=str, help='current version to release', required=True)
|
||||||
return parser.parse_args()
|
return parser.parse_args()
|
||||||
|
|
||||||
|
|
||||||
|
@ -97,6 +98,7 @@ def generate_release_post_markdown(current_version, last_version, release_info):
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
args = parse_args()
|
||||||
token = os.environ['GITHUB_API_TOKEN']
|
token = os.environ['GITHUB_API_TOKEN']
|
||||||
headers = {'Authorization': token}
|
headers = {'Authorization': token}
|
||||||
|
|
||||||
|
@ -111,10 +113,9 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
# collate into markdown
|
# collate into markdown
|
||||||
release_info = collate_release_info(commit_info)
|
release_info = collate_release_info(commit_info)
|
||||||
markdown_text = generate_release_post_markdown('v0.1.7', last_version, release_info)
|
markdown_text = generate_release_post_markdown(args.version, last_version, release_info)
|
||||||
|
|
||||||
# write into a file
|
# write into a file
|
||||||
args = parse_args()
|
|
||||||
with open(args.out, 'w') as f:
|
with open(args.out, 'w') as f:
|
||||||
for line in markdown_text:
|
for line in markdown_text:
|
||||||
f.write(line)
|
f.write(line)
|
||||||
|
|
Loading…
Reference in New Issue