Mercurial > hg
diff contrib/automation/hgautomation/cli.py @ 43076:2372284d9457
formatting: blacken the codebase
This is using my patch to black
(https://github.com/psf/black/pull/826) so we don't un-wrap collection
literals.
Done with:
hg files 'set:**.py - mercurial/thirdparty/** - "contrib/python-zstandard/**"' | xargs black -S
# skip-blame mass-reformatting only
# no-check-commit reformats foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D6971
author | Augie Fackler <augie@google.com> |
---|---|
date | Sun, 06 Oct 2019 09:45:02 -0400 |
parents | c5c502bd1f70 |
children | 9d441f820c8b |
line wrap: on
line diff
--- a/contrib/automation/hgautomation/cli.py Sat Oct 05 10:29:34 2019 -0400 +++ b/contrib/automation/hgautomation/cli.py Sun Oct 06 09:45:02 2019 -0400 @@ -22,12 +22,15 @@ ) -SOURCE_ROOT = pathlib.Path(os.path.abspath(__file__)).parent.parent.parent.parent +SOURCE_ROOT = pathlib.Path( + os.path.abspath(__file__) +).parent.parent.parent.parent DIST_PATH = SOURCE_ROOT / 'dist' -def bootstrap_linux_dev(hga: HGAutomation, aws_region, distros=None, - parallel=False): +def bootstrap_linux_dev( + hga: HGAutomation, aws_region, distros=None, parallel=False +): c = hga.aws_connection(aws_region) if distros: @@ -59,8 +62,9 @@ print('Windows development AMI available as %s' % image.id) -def build_inno(hga: HGAutomation, aws_region, arch, revision, version, - base_image_name): +def build_inno( + hga: HGAutomation, aws_region, arch, revision, version, base_image_name +): c = hga.aws_connection(aws_region) image = aws.ensure_windows_dev_ami(c, base_image_name=base_image_name) DIST_PATH.mkdir(exist_ok=True) @@ -71,13 +75,14 @@ windows.synchronize_hg(SOURCE_ROOT, revision, instance) for a in arch: - windows.build_inno_installer(instance.winrm_client, a, - DIST_PATH, - version=version) + windows.build_inno_installer( + instance.winrm_client, a, DIST_PATH, version=version + ) -def build_wix(hga: HGAutomation, aws_region, arch, revision, version, - base_image_name): +def build_wix( + hga: HGAutomation, aws_region, arch, revision, version, base_image_name +): c = hga.aws_connection(aws_region) image = aws.ensure_windows_dev_ami(c, base_image_name=base_image_name) DIST_PATH.mkdir(exist_ok=True) @@ -88,12 +93,14 @@ windows.synchronize_hg(SOURCE_ROOT, revision, instance) for a in arch: - windows.build_wix_installer(instance.winrm_client, a, - DIST_PATH, version=version) + windows.build_wix_installer( + instance.winrm_client, a, DIST_PATH, version=version + ) -def build_windows_wheel(hga: HGAutomation, aws_region, arch, revision, - base_image_name): +def build_windows_wheel( + hga: HGAutomation, aws_region, arch, revision, base_image_name +): c = hga.aws_connection(aws_region) image = aws.ensure_windows_dev_ami(c, base_image_name=base_image_name) DIST_PATH.mkdir(exist_ok=True) @@ -107,8 +114,9 @@ windows.build_wheel(instance.winrm_client, a, DIST_PATH) -def build_all_windows_packages(hga: HGAutomation, aws_region, revision, - version, base_image_name): +def build_all_windows_packages( + hga: HGAutomation, aws_region, revision, version, base_image_name +): c = hga.aws_connection(aws_region) image = aws.ensure_windows_dev_ami(c, base_image_name=base_image_name) DIST_PATH.mkdir(exist_ok=True) @@ -124,11 +132,13 @@ windows.purge_hg(winrm_client) windows.build_wheel(winrm_client, arch, DIST_PATH) windows.purge_hg(winrm_client) - windows.build_inno_installer(winrm_client, arch, DIST_PATH, - version=version) + windows.build_inno_installer( + winrm_client, arch, DIST_PATH, version=version + ) windows.purge_hg(winrm_client) - windows.build_wix_installer(winrm_client, arch, DIST_PATH, - version=version) + windows.build_wix_installer( + winrm_client, arch, DIST_PATH, version=version + ) def terminate_ec2_instances(hga: HGAutomation, aws_region): @@ -141,8 +151,15 @@ aws.remove_resources(c) -def run_tests_linux(hga: HGAutomation, aws_region, instance_type, - python_version, test_flags, distro, filesystem): +def run_tests_linux( + hga: HGAutomation, + aws_region, + instance_type, + python_version, + test_flags, + distro, + filesystem, +): c = hga.aws_connection(aws_region) image = aws.ensure_linux_dev_ami(c, distro=distro) @@ -151,17 +168,17 @@ ensure_extra_volume = filesystem not in ('default', 'tmpfs') with aws.temporary_linux_dev_instances( - c, image, instance_type, - ensure_extra_volume=ensure_extra_volume) as insts: + c, image, instance_type, ensure_extra_volume=ensure_extra_volume + ) as insts: instance = insts[0] - linux.prepare_exec_environment(instance.ssh_client, - filesystem=filesystem) + linux.prepare_exec_environment( + instance.ssh_client, filesystem=filesystem + ) linux.synchronize_hg(SOURCE_ROOT, instance, '.') t_prepared = time.time() - linux.run_tests(instance.ssh_client, python_version, - test_flags) + linux.run_tests(instance.ssh_client, python_version, test_flags) t_done = time.time() t_setup = t_prepared - t_start @@ -169,29 +186,48 @@ print( 'total time: %.1fs; setup: %.1fs; tests: %.1fs; setup overhead: %.1f%%' - % (t_all, t_setup, t_done - t_prepared, t_setup / t_all * 100.0)) + % (t_all, t_setup, t_done - t_prepared, t_setup / t_all * 100.0) + ) -def run_tests_windows(hga: HGAutomation, aws_region, instance_type, - python_version, arch, test_flags, base_image_name): +def run_tests_windows( + hga: HGAutomation, + aws_region, + instance_type, + python_version, + arch, + test_flags, + base_image_name, +): c = hga.aws_connection(aws_region) image = aws.ensure_windows_dev_ami(c, base_image_name=base_image_name) - with aws.temporary_windows_dev_instances(c, image, instance_type, - disable_antivirus=True) as insts: + with aws.temporary_windows_dev_instances( + c, image, instance_type, disable_antivirus=True + ) as insts: instance = insts[0] windows.synchronize_hg(SOURCE_ROOT, '.', instance) - windows.run_tests(instance.winrm_client, python_version, arch, - test_flags) + windows.run_tests( + instance.winrm_client, python_version, arch, test_flags + ) -def publish_windows_artifacts(hg: HGAutomation, aws_region, version: str, - pypi: bool, mercurial_scm_org: bool, - ssh_username: str): - windows.publish_artifacts(DIST_PATH, version, - pypi=pypi, mercurial_scm_org=mercurial_scm_org, - ssh_username=ssh_username) +def publish_windows_artifacts( + hg: HGAutomation, + aws_region, + version: str, + pypi: bool, + mercurial_scm_org: bool, + ssh_username: str, +): + windows.publish_artifacts( + DIST_PATH, + version, + pypi=pypi, + mercurial_scm_org=mercurial_scm_org, + ssh_username=ssh_username, + ) def run_try(hga: HGAutomation, aws_region: str, rev: str): @@ -208,25 +244,21 @@ help='Path for local state files', ) parser.add_argument( - '--aws-region', - help='AWS region to use', - default='us-west-2', + '--aws-region', help='AWS region to use', default='us-west-2', ) subparsers = parser.add_subparsers() sp = subparsers.add_parser( - 'bootstrap-linux-dev', - help='Bootstrap Linux development environments', + 'bootstrap-linux-dev', help='Bootstrap Linux development environments', ) sp.add_argument( - '--distros', - help='Comma delimited list of distros to bootstrap', + '--distros', help='Comma delimited list of distros to bootstrap', ) sp.add_argument( '--parallel', action='store_true', - help='Generate AMIs in parallel (not CTRL-c safe)' + help='Generate AMIs in parallel (not CTRL-c safe)', ) sp.set_defaults(func=bootstrap_linux_dev) @@ -242,17 +274,13 @@ sp.set_defaults(func=bootstrap_windows_dev) sp = subparsers.add_parser( - 'build-all-windows-packages', - help='Build all Windows packages', + 'build-all-windows-packages', help='Build all Windows packages', ) sp.add_argument( - '--revision', - help='Mercurial revision to build', - default='.', + '--revision', help='Mercurial revision to build', default='.', ) sp.add_argument( - '--version', - help='Mercurial version string to use', + '--version', help='Mercurial version string to use', ) sp.add_argument( '--base-image-name', @@ -262,8 +290,7 @@ sp.set_defaults(func=build_all_windows_packages) sp = subparsers.add_parser( - 'build-inno', - help='Build Inno Setup installer(s)', + 'build-inno', help='Build Inno Setup installer(s)', ) sp.add_argument( '--arch', @@ -273,13 +300,10 @@ default=['x64'], ) sp.add_argument( - '--revision', - help='Mercurial revision to build', - default='.', + '--revision', help='Mercurial revision to build', default='.', ) sp.add_argument( - '--version', - help='Mercurial version string to use in installer', + '--version', help='Mercurial version string to use in installer', ) sp.add_argument( '--base-image-name', @@ -289,8 +313,7 @@ sp.set_defaults(func=build_inno) sp = subparsers.add_parser( - 'build-windows-wheel', - help='Build Windows wheel(s)', + 'build-windows-wheel', help='Build Windows wheel(s)', ) sp.add_argument( '--arch', @@ -300,9 +323,7 @@ default=['x64'], ) sp.add_argument( - '--revision', - help='Mercurial revision to build', - default='.', + '--revision', help='Mercurial revision to build', default='.', ) sp.add_argument( '--base-image-name', @@ -311,10 +332,7 @@ ) sp.set_defaults(func=build_windows_wheel) - sp = subparsers.add_parser( - 'build-wix', - help='Build WiX installer(s)' - ) + sp = subparsers.add_parser('build-wix', help='Build WiX installer(s)') sp.add_argument( '--arch', help='Architecture to build for', @@ -323,13 +341,10 @@ default=['x64'], ) sp.add_argument( - '--revision', - help='Mercurial revision to build', - default='.', + '--revision', help='Mercurial revision to build', default='.', ) sp.add_argument( - '--version', - help='Mercurial version string to use in installer', + '--version', help='Mercurial version string to use in installer', ) sp.add_argument( '--base-image-name', @@ -345,15 +360,11 @@ sp.set_defaults(func=terminate_ec2_instances) sp = subparsers.add_parser( - 'purge-ec2-resources', - help='Purge all EC2 resources managed by us', + 'purge-ec2-resources', help='Purge all EC2 resources managed by us', ) sp.set_defaults(func=purge_ec2_resources) - sp = subparsers.add_parser( - 'run-tests-linux', - help='Run tests on Linux', - ) + sp = subparsers.add_parser('run-tests-linux', help='Run tests on Linux',) sp.add_argument( '--distro', help='Linux distribution to run tests on', @@ -374,8 +385,18 @@ sp.add_argument( '--python-version', help='Python version to use', - choices={'system2', 'system3', '2.7', '3.5', '3.6', '3.7', '3.8', - 'pypy', 'pypy3.5', 'pypy3.6'}, + choices={ + 'system2', + 'system3', + '2.7', + '3.5', + '3.6', + '3.7', + '3.8', + 'pypy', + 'pypy3.5', + 'pypy3.6', + }, default='system2', ) sp.add_argument( @@ -386,13 +407,10 @@ sp.set_defaults(func=run_tests_linux) sp = subparsers.add_parser( - 'run-tests-windows', - help='Run tests on Windows', + 'run-tests-windows', help='Run tests on Windows', ) sp.add_argument( - '--instance-type', - help='EC2 instance type to use', - default='t3.medium', + '--instance-type', help='EC2 instance type to use', default='t3.medium', ) sp.add_argument( '--python-version', @@ -407,8 +425,7 @@ default='x64', ) sp.add_argument( - '--test-flags', - help='Extra command line flags to pass to run-tests.py', + '--test-flags', help='Extra command line flags to pass to run-tests.py', ) sp.add_argument( '--base-image-name', @@ -419,7 +436,7 @@ sp = subparsers.add_parser( 'publish-windows-artifacts', - help='Publish built Windows artifacts (wheels, installers, etc)' + help='Publish built Windows artifacts (wheels, installers, etc)', ) sp.add_argument( '--no-pypi', @@ -436,22 +453,17 @@ help='Skip uploading to www.mercurial-scm.org', ) sp.add_argument( - '--ssh-username', - help='SSH username for mercurial-scm.org', + '--ssh-username', help='SSH username for mercurial-scm.org', ) sp.add_argument( - 'version', - help='Mercurial version string to locate local packages', + 'version', help='Mercurial version string to locate local packages', ) sp.set_defaults(func=publish_windows_artifacts) sp = subparsers.add_parser( - 'try', - help='Run CI automation against a custom changeset' + 'try', help='Run CI automation against a custom changeset' ) - sp.add_argument('-r', '--rev', - default='.', - help='Revision to run CI on') + sp.add_argument('-r', '--rev', default='.', help='Revision to run CI on') sp.set_defaults(func=run_try) return parser