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():
|
||||
parser = argparse.ArgumentParser()
|
||||
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()
|
||||
|
||||
|
||||
|
@ -97,6 +98,7 @@ def generate_release_post_markdown(current_version, last_version, release_info):
|
|||
|
||||
|
||||
if __name__ == '__main__':
|
||||
args = parse_args()
|
||||
token = os.environ['GITHUB_API_TOKEN']
|
||||
headers = {'Authorization': token}
|
||||
|
||||
|
@ -111,10 +113,9 @@ if __name__ == '__main__':
|
|||
|
||||
# collate into markdown
|
||||
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
|
||||
args = parse_args()
|
||||
with open(args.out, 'w') as f:
|
||||
for line in markdown_text:
|
||||
f.write(line)
|
||||
|
|
Loading…
Reference in New Issue