def test_config_list_args(self): config_dict = { "name": "foo", "image": "foo/bar:latest", "args": ["foo"] } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == ([], ["foo"]) config_dict = { "name": "foo", "image": "foo/bar:latest", "args": ["foo", "bar"] } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == ([], ["foo", "bar"])
def test_config_str_command(self): config_dict = { "name": "foo", "image": "foo/bar:latest", "command": "foo" } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == (["foo"], [])
def test_exec_config_with_str_command(self): config_dict = { "name": "foo", "image": "test/test", "command": "python t2t-trainer", } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == (["python t2t-trainer"], []) config_dict = { "name": "foo", "image": "test/test", "command": ["python t2t-trainer"], } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == (["python t2t-trainer"], [])
def test_exec_config_with_str_args(self): config_dict = { "name": "foo", "image": "test/test", "args": "python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base", } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == ( [], [ "python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base" ], ) config_dict = { "name": "foo", "image": "test/test", "args": "foo && python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base", } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == ( [], [ "foo && python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base" ], ) config_dict = { "name": "foo", "image": "test/test", "args": "foo; python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base", } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == ( [], [ "foo; python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base" ], ) config_dict = { "name": "foo", "image": "test/test", "args": "foo || python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base", } config = k8s_schemas.V1Container(**config_dict) assert get_container_command_args(config) == ( [], [ "foo || python t2t-trainer " "--generate_data " "--data_dir=~/t2t_data " "--problems=translate_ende_wmt32k " "--model=transformer " "--hparams_set=transformer_base_single_gpu " "--output_dir=~/t2t_train/base" ], )
def test_none_cmd_args(self): assert get_container_command_args(self.null_cmd1) == ([], [])
def test_get_container_command_args_list_cmd(self): assert get_container_command_args(self.list_cmd1) == ( ["/bin/bash", "-c"], [ "video_prediction_train --model=DNA --num_masks=1", "video_prediction_train --model=NEW --num_masks=10", ], ) assert get_container_command_args(self.list_cmd2) == ( ["/bin/bash", "-c"], ["/bin/bash run1.sh", "/bin/bash run2.sh", "/bin/bash run3.sh"], ) assert get_container_command_args(self.list_cmd3) == ( ["/bin/bash", "-c"], [ "run1.sh", "python3 model.py " "--batch_size={{ batch_size }} " "--num_steps={{ num_steps }} " "--learning_rate={{ learning_rate }} " "--dropout={{ dropout }} " "--num_epochs={{ num_epochs }} " "--activation={{ activation }}", ], ) assert get_container_command_args(self.list_cmd4) == ( ["/bin/bash"], [ "run1.sh", "video_prediction_train --model=DNA --num_masks=1 && " "python3 model.py " "--batch_size={{ batch_size }} " "--num_steps={{ num_steps }} " "--learning_rate={{ learning_rate }} " "--dropout={{ dropout }} " "--num_epochs={{ num_epochs }} " "--activation={{ activation }}", ], ) assert get_container_command_args(self.list_cmd5) == ( [], [ "/bin/bash run1.sh", "video_prediction_train --model=DNA --num_masks=1 ; " "python3 model.py " "--batch_size={{ batch_size }} " "--num_steps={{ num_steps }} " "--learning_rate={{ learning_rate }} " "--dropout={{ dropout }} " "--num_epochs={{ num_epochs }} " "--activation={{ activation }}", ], ) assert get_container_command_args(self.list_cmd6) == ( [], [ "/bin/bash run1.sh", "video_prediction_train --model=DNA --num_masks=1 || " "python3 model.py " "--batch_size={{ batch_size }} " "--num_steps={{ num_steps }} " "--learning_rate={{ learning_rate }} " "--dropout={{ dropout }} " "--num_epochs={{ num_epochs }} " "--activation={{ activation }}", ], )