mirror of
https://github.com/LBRYFoundation/herald.go.git
synced 2025-10-01 07:30:33 +00:00
updates versioning script
This commit is contained in:
parent
e6cd5bc220
commit
6b45d7470e
1 changed files with 318 additions and 279 deletions
|
@ -1,8 +1,8 @@
|
|||
import os
|
||||
import io
|
||||
import sys
|
||||
import json
|
||||
import argparse
|
||||
import io
|
||||
import json
|
||||
import os
|
||||
import sys
|
||||
import unittest
|
||||
from datetime import date, datetime
|
||||
from getpass import getpass
|
||||
|
@ -137,7 +137,7 @@ def release(args):
|
|||
current_version = Version.from_content(version_file)
|
||||
print(f'Current Version: {current_version}')
|
||||
except:
|
||||
current_version = Version(0)
|
||||
current_version = Version()
|
||||
version_file = repo.create_file("version.txt", message="add version file", content=str(current_version).encode('utf-8'))
|
||||
|
||||
|
||||
|
@ -151,8 +151,12 @@ def release(args):
|
|||
new_version = current_version.increment(args.action)
|
||||
print(f' New Version: {new_version}')
|
||||
|
||||
previous_release = repo.release_from_tag(args.start_tag or current_version.tag)
|
||||
tag = args.start_tag if args.start_tag else current_version.tag
|
||||
|
||||
try:
|
||||
previous_release = repo.release_from_tag(tag)
|
||||
except github3.exceptions.NotFoundError:
|
||||
previous_release = list(repo.releases())[-1]
|
||||
print(f' Changelog From: {previous_release.tag_name} ({previous_release.created_at})')
|
||||
print()
|
||||
|
||||
|
@ -221,6 +225,7 @@ def release(args):
|
|||
version_file.decoded.decode('utf-8').replace(str(current_version), str(new_version)).encode()
|
||||
)['commit']
|
||||
|
||||
if args.action != "current":
|
||||
repo.create_tag(
|
||||
tag=new_version.tag,
|
||||
message=new_version.tag,
|
||||
|
@ -235,9 +240,43 @@ def release(args):
|
|||
body=body.getvalue(),
|
||||
draft=True,
|
||||
)
|
||||
|
||||
return 0
|
||||
|
||||
elif args.action == "current":
|
||||
print("in args.action == current")
|
||||
try:
|
||||
print(new_version.tag)
|
||||
# if we have the tag and release already don't do anything
|
||||
release = repo.release_from_tag(new_version.tag)
|
||||
if release.prerelease:
|
||||
release.edit(prerelease=False)
|
||||
return
|
||||
except Exception as e:
|
||||
print(e)
|
||||
try:
|
||||
# We need to do this to get draft and prerelease releases
|
||||
release = repo.releases().next()
|
||||
# Case me have a release and no tag
|
||||
if release.name == new_version.tag:
|
||||
if release.draft:
|
||||
release.edit(draft=False, prerelease=True)
|
||||
elif release.prerelease:
|
||||
release.edit(prerelease=False)
|
||||
return
|
||||
else:
|
||||
raise Exception("asdf")
|
||||
except:
|
||||
repo.create_tag(
|
||||
tag=new_version.tag,
|
||||
message=new_version.tag,
|
||||
sha=commit.sha,
|
||||
obj_type='commit',
|
||||
tagger=commit.committer
|
||||
)
|
||||
repo.create_release(
|
||||
new_version.tag,
|
||||
name=new_version.tag,
|
||||
body=body.getvalue(),
|
||||
draft=True,
|
||||
)
|
||||
|
||||
class TestReleaseTool(unittest.TestCase):
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue