Exemplo n.º 1
0
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
Exemplo n.º 2
0
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()
Exemplo n.º 3
0
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)
Exemplo n.º 4
0
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}")
Exemplo n.º 6
0
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))
Exemplo n.º 7
0
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)
Exemplo n.º 8
0
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
Exemplo n.º 9
0
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)