Skip to content

Commit

Permalink
tag-tool: Add --prerelease option (ethereum-optimism#12210)
Browse files Browse the repository at this point in the history
  • Loading branch information
Inphi authored Sep 30, 2024
1 parent 7467980 commit f0227a8
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions ops/tag-service/tag-tool.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,26 @@
GIT_TAG_COMMAND = 'git tag -a {tag} -m "{message}"'
GIT_PUSH_COMMAND = 'git push origin {tag}'

def new_tag(service, version, bump):
def new_tag(service, version, bump, pre_release):
if bump == 'major':
bumped = version.bump_major()
elif bump == 'minor':
bumped = version.bump_minor()
elif bump == 'patch':
bumped = version.bump_patch()
elif bump == 'prerelease':
if pre_release:
raise Exception('Cannot use --bump=prerelease with --pre-release')
bumped = version.bump_prerelease()
elif bump == 'finalize-prerelease':
if pre_release:
raise Exception('Cannot use --bump=finalize-prerelease with --pre-release')
bumped = version.finalize_version()
else:
raise Exception('Invalid bump type: {}'.format(bump))

if pre_release:
bumped = bumped.bump_prerelease()
return f'{service}/v{bumped}'

def latest_version(service):
Expand All @@ -57,6 +64,7 @@ def main():
parser = argparse.ArgumentParser(description='Create a new git tag for a service')
parser.add_argument('--service', type=str, help='The name of the Service')
parser.add_argument('--bump', type=str, help='The type of bump to apply to the version number')
parser.add_argument('--pre-release', help='Treat this tag as a pre-release', action='store_true')
parser.add_argument('--message', type=str, help='Message to include in git tag', default='[tag-tool-release]')
args = parser.parse_args()

Expand All @@ -67,7 +75,7 @@ def main():
else:
latest = latest_version(service)

bumped = new_tag(service, semver.VersionInfo.parse(latest), args.bump)
bumped = new_tag(service, semver.VersionInfo.parse(latest), args.bump, args.pre_release)

print(f'latest tag: {latest}')
print(f'new tag: {bumped}')
Expand Down

0 comments on commit f0227a8

Please sign in to comment.