| #!/usr/bin/env python3 |
| # Copyright (c) 2023, the R8 project authors. Please see the AUTHORS file |
| # for details. All rights reserved. Use of this source code is governed by a |
| # BSD-style license that can be found in the LICENSE file. |
| |
| import argparse |
| import sys |
| |
| import gmaven |
| import utils |
| |
| ARCHIVE_BUCKET = 'r8-releases' |
| REPO = 'https://github.com/google/smali' |
| |
| |
| def parse_options(): |
| result = argparse.ArgumentParser(description='Release Smali') |
| result.add_argument('--version', |
| required=True, |
| metavar=('<version>'), |
| help='The version of smali to release.') |
| result.add_argument( |
| '--dry-run', |
| default=False, |
| action='store_true', |
| help='Only perform non-commiting tasks and print others.') |
| return result.parse_args() |
| |
| |
| def Main(): |
| options = parse_options() |
| utils.check_gcert() |
| gfile = ('/bigstore/r8-releases/smali/%s/smali-maven-release-%s.zip' % |
| (options.version, options.version)) |
| release_id = gmaven.publisher_stage([gfile], options.dry_run) |
| |
| print('Staged Release ID %s.\n' % release_id) |
| gmaven.publisher_stage_redir_test_info( |
| release_id, 'com.android.tools.smali:smali:%s' % options.version, |
| 'smali.jar') |
| |
| print() |
| answer = input('Continue with publishing [y/N]:') |
| |
| if answer != 'y': |
| print('Aborting release to Google maven') |
| sys.exit(1) |
| |
| gmaven.publisher_publish(release_id, options.dry_run) |
| |
| print() |
| print('Published. Use the email workflow for approval.') |
| |
| |
| if __name__ == '__main__': |
| sys.exit(Main()) |