def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(args.upload_tools): assess_block(bs_manager.client, bs_manager.series) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) run_perfscale_test(assess_controller_stress, bs_manager, args) return 0
def main(argv): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(upload_tools=args.upload_tools): with detect_bootstrap_machine(bs_manager): assess_recovery(bs_manager, args.strategy, args.charm_series)
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with maas_account_from_boot_config(bs_manager.client.env) as account: assess_endpoint_bindings(account, bs_manager) return 0
def main(): args = parse_args() configure_logging(max(logging.WARNING - 10 * args.verbose, logging.DEBUG)) if args.released: download_released_juju(args) if args.revision: download_candidate_juju(args)
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(args.upload_tools): assess_user_grant_revoke(bs_manager.client) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) run_perfscale_test(perfscale_assess_model_destruction, bs_manager, args) return 0
def main(): args = parse_args() configure_logging(logging.INFO) assess_heterogeneous(args.initial, args.other, args.base_environment, args.environment_name, args.log_dir, args.upload_tools, args.debug, args.agent_url, args.agent_stream, args.series)
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) check_resources() assess_charmstore_resources(args.charm_bin, args.credentials_file) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(args.upload_tools): assess_model_change_watcher(bs_manager.client, bs_manager.series, args.juju_bin) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) test_kvm = '--with-virttype-kvm' in args with bs_manager.booted_context(args.upload_tools): assess_constraints(bs_manager.client, test_kvm) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) with temp_dir() as temp: os.environ['JUJU_HOME'] = temp os.environ['JUJU_DATA'] = temp assess_add_credentials(args) return 0
def main(argv=None): args = parse_args(argv) series = args.series if args.series else 'xenial' configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(args.upload_tools): assess_juju_status(bs_manager.client, series) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) bs_manager.client.enable_feature('address-allocation') with cleaned_bootstrap_context(bs_manager, args) as ctx: assess_spaces_subnets(bs_manager.client) return ctx.return_code
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(args.upload_tools): _set_charm_store_ip(bs_manager.client, args.charm_store_ip) assess_deploy(bs_manager.client, args.charm) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) client = client_from_config(args.env, args.juju_bin, False) agent_stream = args.agent_stream if args.agent_stream else 'devel' agent_version = get_agent_version(client) assess_juju_sync_tools(client, agent_stream, agent_version) return 0
def main(): """ Test Juju scale out.""" args = parse_args() configure_logging(args.verbose) charms = args.charms with scaleout_setup(args) as client: deploy_charms(client, charms) for charm in charms: scale_out(client, charm)
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) client = bs_manager.client machine_types = _get_container_types(client, args.machine_type) with cleaned_bootstrap_context(bs_manager, args): assess_container_networking(bs_manager.client, machine_types) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) if (args.other_region is not None and args.other_region == bs_manager.client.env.get_region()): raise ValueError('Other region is a repeat of region.') with bs_manager.booted_context(args.upload_tools): assess_model_defaults(bs_manager.client, args.other_region) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) client = client_from_args(args) bs_manager = BootstrapManager.from_client(args, client) if args.test == 'combined': assess_cloud_combined(bs_manager) elif args.test == 'provisioning': assess_cloud_provisioning(bs_manager, args.machine_series) else: assess_cloud_kill_controller(bs_manager)
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) client = bs_manager.client if args.image_metadata_url is not None: client.env.update_config('image-metadata-url', args.image_metadata_url) with bs_manager.booted_context(args.upload_tools): assess_mixed_images(bs_manager.client) return 0
def main(argv=None): """Run many tasks concurrently.""" args = parse_args(argv) configure_logging(args.verbose) tasks = [Task(*t, log_dir=args.log_dir) for t in args.tasks] try: names = [t.name for t in tasks] log.debug('Running these tasks {}'.format(names)) run_all(list(tasks)) except Exception: log.exception("Script failed while running tasks") return 126 return min(100, summarise_tasks(tasks))
def main(): args = parse_args() log_level = logging.WARNING - args.verbose * (logging.WARNING - logging.INFO) configure_logging(log_level) if args.command == 'get-juju-bin': return get_juju_bin(args) elif args.command == 'get': return cmd_get(args) elif args.command == 'get-summary': return cmd_get_summary(args) else: raise Exception('{} not implemented.'.format(args.command))
def deploy_job(): args = deploy_job_parse_args() configure_logging(args.verbose) series = args.series if not args.logs: args.logs = generate_default_clean_dir(args.temp_env_name) if series is None: series = 'precise' charm_series = series # Don't need windows or centos state servers. if series.startswith("win") or series.startswith("centos"): logging.info('Setting default series to trusty for win and centos.') series = 'trusty' return _deploy_job(args, charm_series, series)
def main(argv=None): return_code = 1 args = parse_args(argv) configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) with bs_manager.booted_context(args.upload_tools): return_code = assess_update_mongo(bs_manager.client, args.series, bs_manager.known_hosts['0']) log.info("Tearing down test.") log.info("Teardown complete.") if return_code == 0: log.info('TEST PASS') else: log.info('TEST FAIL') return return_code
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) if not os.path.isfile(args.agent_file): raise Exception( "Unable to find juju agent file {}".format(args.agent_file)) agent_stream = args.agent_stream if args.agent_stream else 'testing' with make_unique_tool(args.agent_file, agent_stream) as agent_dir: assess_metadata(args, agent_dir, agent_stream) with make_unique_tool(args.agent_file, agent_stream) as agent_dir: assess_add_cloud(args, agent_dir, agent_stream) return 0
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) if args.model: client = client_for_existing(args.juju_bin, os.environ['JUJU_HOME']) start_test(client, args, None) else: bs_manager = BootstrapManager.from_args(args) if args.maas: bs_manager.client.excluded_spaces = set() bs_manager.client.reserved_spaces = set() with bs_manager.booted_context(args.upload_tools): if args.maas: start_maas_test(bs_manager.client, args) else: start_test(bs_manager.client, args, None) return 0
def main(): parser = add_basic_testing_arguments(ArgumentParser()) parser.add_argument('bundle_path', help='URL or path to a bundle') parser.add_argument('--service-count', type=int, default=2, help='Minimum number of expected services.') args = parser.parse_args() configure_logging(args.verbose) bs_manager = BootstrapManager.from_args(args) quickstart = QuickstartTest( bs_manager, args.bundle_path, args.service_count) try: quickstart.run() except LoggedException: sys.exit(1) except Exception as e: print('%s (%s)' % (e, type(e).__name__)) sys.exit(1)
def main(argv=None): args = parse_args(argv) configure_logging(args.verbose) start_juju_path = None if args.upgrade else args.juju_bin client = client_from_config(args.env, start_juju_path, debug=args.debug, soft_deadline=args.deadline) with boot_context(args.temp_env_name, client, None, [], args.series, args.agent_url, args.agent_stream, args.logs, args.keep_env, upload_tools=args.upload_tools, region=args.region): assess_deployer( args, client, args.agent_timeout, args.workload_timeout) if args.bundle_verification_script: client_ser = pickle.dumps(client) logging.info('Calling bundle verification script {}'.format( args.bundle_verification_script)) run_command([args.bundle_verification_script, client_ser]) return 0
def main(): configure_logging(logging.INFO) args = parse_args(None) default_log_dir(args) public_clouds = yaml_file_load('public-clouds.yaml')['clouds'] credentials = yaml_file_load('credentials.yaml')['credentials'] failures = [] try: for failure in bootstrap_cloud_regions(public_clouds, credentials, args): failures.append(failure) finally: if len(failures) == 0: print('No failures!') return 0 else: print('Failed:') for config, region, e in failures: print(' * {} {} {}'.format(config, region, e)) return 1