def run_setup_marathon_job(context): update_context_marathon_config(context) with mock.patch.object( SystemPaastaConfig, 'get_zk_hosts', autospec=True, return_value=context.zk_hosts, ), mock.patch( 'paasta_tools.setup_marathon_job.parse_args', autospec=True, ) as mock_parse_args, mock.patch.object( MarathonServiceConfig, 'format_marathon_app_dict', autospec=True, return_value=context.marathon_complete_config, ), mock.patch( 'paasta_tools.setup_marathon_job.monitoring_tools.send_event', autospec=True, ): mock_parse_args.return_value = mock.Mock( verbose=True, soa_dir=context.soa_dir, service_instance_list=[context.job_id], ) try: setup_marathon_job.main() except (SystemExit, MarathonHttpError): pass
def run_setup_marathon_job_no_apps_found(context): update_context_marathon_config(context) with mock.patch.object( SystemPaastaConfig, 'get_zk_hosts', autospec=True, return_value=context.zk_hosts ), mock.patch( 'paasta_tools.setup_marathon_job.parse_args', autospec=True ) as mock_parse_args, mock.patch.object( MarathonServiceConfig, 'format_marathon_app_dict', autospec=True, return_value=context.marathon_complete_config ), mock.patch( 'paasta_tools.setup_marathon_job.monitoring_tools.send_event', autospec=True ), mock.patch( 'paasta_tools.setup_marathon_job.marathon_tools.get_all_marathon_apps', autospec=True, return_value=[]): mock_parse_args.return_value = mock.Mock( verbose=True, soa_dir=context.soa_dir, service_instance_list=[context.job_id], ) setup_marathon_job.main()
def create_app_with_instances(context, job_id, number): set_number_instances(context, number) context.job_id = job_id (service, instance, _, __) = decompose_job_id(job_id) context.service = service context.instance = instance context.zk_hosts = '%s/mesos-testcluster' % get_service_connection_string('zookeeper') update_context_marathon_config(context) context.app_id = context.marathon_complete_config['id'] run_setup_marathon_job(context)
def create_app_with_instances_constraints(context, job_id, number, constraints): set_number_instances(context, number) context.job_id = job_id (service, instance, _, __) = decompose_job_id(job_id) context.service = service context.instance = instance context.zk_hosts = "%s/mesos-testcluster" % get_service_connection_string("zookeeper") context.constraints = constraints update_context_marathon_config(context) context.app_id = context.marathon_complete_config["id"] run_setup_marathon_job(context)
def delete_apps(context, job_id, cluster_name): context.job_id = job_id (service, instance, _, __) = decompose_job_id(job_id) context.service = service context.instance = instance context.zk_hosts = "%s/mesos-testcluster" % get_service_connection_string( "zookeeper") update_context_marathon_config(context) context.app_id = context.marathon_complete_config["id"] os.remove(f"{context.soa_dir}/{service}/marathon-{cluster_name}.yaml") os.remove(f"{context.soa_dir}/{service}/deployments.json") os.rmdir(f"{context.soa_dir}/{service}")
def delete_apps(context, job_id, cluster_name): context.job_id = job_id (service, instance, _, __) = decompose_job_id(job_id) context.service = service context.instance = instance context.zk_hosts = '%s/mesos-testcluster' % get_service_connection_string('zookeeper') update_context_marathon_config(context) context.app_id = context.marathon_complete_config['id'] os.remove("{0}/{1}/marathon-{2}.yaml".format(context.soa_dir, service, cluster_name)) os.remove("{0}/{1}/deployments.json".format(context.soa_dir, service, cluster_name)) os.rmdir("{0}/{1}".format(context.soa_dir, service))
def create_app_with_instances_constraints(context, job_id, number, constraints, no_apps_running=False): set_number_instances(context, number) context.job_id = job_id (service, instance, _, __) = decompose_job_id(job_id) context.service = service context.instance = instance context.zk_hosts = '%s/mesos-testcluster' % get_service_connection_string('zookeeper') context.constraints = constraints update_context_marathon_config(context) context.app_id = context.marathon_complete_config['id'] if no_apps_running: run_setup_marathon_job_no_apps_found(context) else: run_setup_marathon_job(context)
def run_setup_marathon_job(context): update_context_marathon_config(context) with contextlib.nested( mock.patch.object(SystemPaastaConfig, "get_zk_hosts", autospec=True, return_value=context.zk_hosts), mock.patch("paasta_tools.setup_marathon_job.parse_args", autospec=True), mock.patch.object( MarathonServiceConfig, "format_marathon_app_dict", autospec=True, return_value=context.marathon_complete_config, ), mock.patch("paasta_tools.setup_marathon_job.monitoring_tools.send_event", autospec=True), ) as (mock_get_zk_hosts, mock_parse_args, _, _): mock_parse_args.return_value = mock.Mock( verbose=True, soa_dir=context.soa_dir, service_instance_list=[context.job_id] ) try: setup_marathon_job.main() except (SystemExit, MarathonHttpError): pass
def create_app_with_instances_constraints(context, job_id, number, constraints, no_apps_running=False): set_number_instances(context, number) context.job_id = job_id (service, instance, _, __) = decompose_job_id(job_id) context.service = service context.instance = instance context.zk_hosts = "%s/mesos-testcluster" % get_service_connection_string( "zookeeper") context.constraints = constraints update_context_marathon_config(context) context.app_id = context.marathon_complete_config["id"] context.new_id = ( context.app_id ) # for compatibility with bounces_steps.there_are_num_which_tasks if no_apps_running: run_setup_marathon_job_no_apps_found(context) else: run_setup_marathon_job(context)