| #!/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()) |