def testGetOrCreateMultiNodeType(self):
     config = MULTI_WORKER_CLUSTER.copy()
     # Commenting out this line causes the test case to fail?!?!
     config["min_workers"] = 0
     config_path = self.write_config(config)
     config_path = self.write_config(MULTI_WORKER_CLUSTER)
     self.provider = MockProvider()
     runner = MockProcessRunner()
     get_or_create_head_node(MULTI_WORKER_CLUSTER,
                             config_path,
                             no_restart=False,
                             restart_only=False,
                             yes=True,
                             override_cluster_name=None,
                             _provider=self.provider,
                             _runner=runner)
     self.waitForNodes(1)
     runner.assert_has_call("1.2.3.4", "init_cmd")
     runner.assert_has_call("1.2.3.4", "setup_cmd")
     runner.assert_has_call("1.2.3.4", "start_ray_head")
     self.assertEqual(self.provider.mock_nodes[0].node_type, "empty_node")
     self.assertEqual(
         self.provider.mock_nodes[0].node_config.get("FooProperty"), 42)
     self.assertEqual(
         self.provider.mock_nodes[0].node_config.get("TestProp"), 1)
     self.assertEqual(
         self.provider.mock_nodes[0].tags.get(TAG_RAY_USER_NODE_TYPE),
         "empty_node")
Exemple #2
0
 def testGetOrCreateHeadNode(self):
     config_path = self.write_config(SMALL_CLUSTER)
     self.provider = MockProvider()
     runner = MockProcessRunner()
     runner.respond_to_call("json .Mounts", ["[]"])
     # Two initial calls to docker cp, one before run, two final calls to cp
     runner.respond_to_call(".State.Running",
                            ["false", "false", "false", "true", "true"])
     get_or_create_head_node(SMALL_CLUSTER,
                             config_path,
                             no_restart=False,
                             restart_only=False,
                             yes=True,
                             override_cluster_name=None,
                             _provider=self.provider,
                             _runner=runner)
     self.waitForNodes(1)
     runner.assert_has_call("1.2.3.4", "init_cmd")
     runner.assert_has_call("1.2.3.4", "head_setup_cmd")
     runner.assert_has_call("1.2.3.4", "start_ray_head")
     self.assertEqual(self.provider.mock_nodes[0].node_type, None)
     runner.assert_has_call("1.2.3.4", pattern="docker run")
     runner.assert_not_has_call(
         "1.2.3.4", pattern="-v /tmp/ray_tmp_mount/~/ray_bootstrap_config")
     runner.assert_has_call(
         "1.2.3.4",
         pattern="docker cp /tmp/ray_tmp_mount/~/ray_bootstrap_key.pem")
     runner.assert_has_call(
         "1.2.3.4",
         pattern="docker cp /tmp/ray_tmp_mount/~/ray_bootstrap_config.yaml")
Exemple #3
0
 def testGetOrCreateHeadNode(self):
     config_path = self.write_config(SMALL_CLUSTER)
     self.provider = MockProvider()
     runner = MockProcessRunner()
     get_or_create_head_node(SMALL_CLUSTER,
                             config_path,
                             no_restart=False,
                             restart_only=False,
                             yes=True,
                             override_cluster_name=None,
                             _provider=self.provider,
                             _runner=runner)
     self.waitForNodes(1)
     runner.assert_has_call("1.2.3.4", "init_cmd")
     runner.assert_has_call("1.2.3.4", "head_setup_cmd")
     runner.assert_has_call("1.2.3.4", "start_ray_head")
     self.assertEqual(self.provider.mock_nodes[0].node_type, None)
Exemple #4
0
 def testGetOrCreateMultiNodeType(self):
     config_path = self.write_config(MULTI_WORKER_CLUSTER)
     self.provider = MockProvider()
     runner = MockProcessRunner()
     get_or_create_head_node(MULTI_WORKER_CLUSTER,
                             config_path,
                             no_restart=False,
                             restart_only=False,
                             yes=True,
                             override_cluster_name=None,
                             _provider=self.provider,
                             _runner=runner)
     self.waitForNodes(1)
     runner.assert_has_call("1.2.3.4", "init_cmd")
     runner.assert_has_call("1.2.3.4", "head_setup_cmd")
     runner.assert_has_call("1.2.3.4", "start_ray_head")
     self.assertEqual(self.provider.mock_nodes[0].node_type, "m4.large")
     self.assertEqual(
         self.provider.mock_nodes[0].node_config.get("FooProperty"), 42)
     self.assertEqual(
         self.provider.mock_nodes[0].node_config.get("TestProp"), 1)
     self.assertEqual(
         self.provider.mock_nodes[0].tags.get(TAG_RAY_USER_NODE_TYPE),
         "m4.large")