def test_get_paasta_execute_docker_healthcheck_when_not_found(): mock_docker_client = mock.MagicMock(spec_set=docker.Client) fake_mesos_id = 'fake_mesos_id' fake_container_info = [ { 'Config': { 'Env': ['fake_key1=fake_value1', 'MESOS_TASK_ID=fake_other_mesos_id'] }, 'Id': '11111' }, { 'Config': { 'Env': [ 'fake_key2=fake_value2', 'MESOS_TASK_ID=fake_other_mesos_id2' ] }, 'Id': '2222' }, ] mock_docker_client.containers = mock.MagicMock( spec_set=docker.Client, return_value=['fake_container_1', 'fake_container_2'], ) mock_docker_client.inspect_container = mock.MagicMock( spec_set=docker.Client, side_effect=fake_container_info, ) assert mesos_tools.get_container_id_for_mesos_id(mock_docker_client, fake_mesos_id) is None
def test_get_paasta_execute_docker_healthcheck_when_not_found(): mock_docker_client = mock.MagicMock(spec_set=docker.Client) fake_mesos_id = "fake_mesos_id" fake_container_info = [ { "Config": { "Env": ["fake_key1=fake_value1", "MESOS_TASK_ID=fake_other_mesos_id"] }, "Id": "11111", }, { "Config": { "Env": [ "fake_key2=fake_value2", "MESOS_TASK_ID=fake_other_mesos_id2" ] }, "Id": "2222", }, ] mock_docker_client.containers = mock.MagicMock( spec_set=docker.Client, return_value=["fake_container_1", "fake_container_2"]) mock_docker_client.inspect_container = mock.MagicMock( spec_set=docker.Client, side_effect=fake_container_info) assert (mesos_tools.get_container_id_for_mesos_id(mock_docker_client, fake_mesos_id) is None)
def main(): args = parse_args() if not args.mesos_id: paasta_print( "The Mesos task id you supplied seems to be an empty string! Please provide a valid task id." ) sys.exit(2) docker_client = get_docker_client() container_id = get_container_id_for_mesos_id(docker_client, args.mesos_id) if container_id: try: with time_limit(args.timeout): output, return_code = execute_in_container( docker_client, container_id, args.cmd, args.timeout) paasta_print(output) except TimeoutException: paasta_print("Command timed out!") return_code = 1 finally: sys.exit(return_code) else: paasta_print("Could not find container with MESOS_TASK_ID '%s'." % args.mesos_id) sys.exit(1)
def main(): args = parse_args() if not args.mesos_id: sys.stdout.write( "The Mesos task id you supplied seems to be an empty string! Please provide a valid task id.\n") sys.exit(2) docker_client = get_docker_client() container_id = get_container_id_for_mesos_id(docker_client, args.mesos_id) if container_id: try: with time_limit(args.timeout): output, return_code = execute_in_container(docker_client, container_id, args.cmd, args.timeout) sys.stdout.write(output) except TimeoutException: sys.stdout.write("Command timed out!\n") return_code = 1 finally: sys.exit(return_code) else: sys.stdout.write("Could not find container with MESOS_TASK_ID '%s'.\n" % args.mesos_id) sys.exit(1)
def test_get_paasta_execute_docker_healthcheck_when_not_found(): mock_docker_client = mock.MagicMock(spec_set=docker.Client) fake_mesos_id = "fake_mesos_id" fake_container_info = [ {"Config": {"Env": ["fake_key1=fake_value1", "MESOS_TASK_ID=fake_other_mesos_id"]}, "Id": "11111"}, {"Config": {"Env": ["fake_key2=fake_value2", "MESOS_TASK_ID=fake_other_mesos_id2"]}, "Id": "2222"}, ] mock_docker_client.containers = mock.MagicMock( spec_set=docker.Client, return_value=["fake_container_1", "fake_container_2"] ) mock_docker_client.inspect_container = mock.MagicMock(spec_set=docker.Client, side_effect=fake_container_info) assert mesos_tools.get_container_id_for_mesos_id(mock_docker_client, fake_mesos_id) is None
def test_get_paasta_execute_docker_healthcheck_when_not_found(): mock_docker_client = mock.MagicMock(spec_set=docker.Client) fake_mesos_id = 'fake_mesos_id' fake_container_info = [ {'Config': {'Env': ['fake_key1=fake_value1', 'MESOS_TASK_ID=fake_other_mesos_id']}, 'Id': '11111'}, {'Config': {'Env': ['fake_key2=fake_value2', 'MESOS_TASK_ID=fake_other_mesos_id2']}, 'Id': '2222'}, ] mock_docker_client.containers = mock.MagicMock( spec_set=docker.Client, return_value=['fake_container_1', 'fake_container_2'], ) mock_docker_client.inspect_container = mock.MagicMock( spec_set=docker.Client, side_effect=fake_container_info, ) assert mesos_tools.get_container_id_for_mesos_id(mock_docker_client, fake_mesos_id) is None