def test_execute_commands(self, popen_call): wait_mock = popen_call.return_value.wait wait_mock.return_value = 0 data = {"hooks": {"build": ["ble"]}} run_build_hooks(data, envs={'env': 'varrr'}) self.assertEqual(popen_call.call_args[0][0], ['/bin/bash', '-lc', 'ble']) self.assertEqual(popen_call.call_args[1]['shell'], False) self.assertEqual(popen_call.call_args[1]['cwd'], '/') self.assertEqual(popen_call.call_args[1]['env'], {'env': 'varrr', 'env1': 'var1'}) wait_mock.assert_called_once_with()
def test_execute_failing_commands(self, popen_call, exit_mock): wait_mock = popen_call.return_value.wait wait_mock.return_value = 5 data = {"hooks": {"build": ["ble"]}} run_build_hooks(data) self.assertEqual(popen_call.call_args[0][0], ['/bin/bash', '-lc', 'ble']) self.assertEqual(popen_call.call_args[1]['shell'], False) self.assertEqual(popen_call.call_args[1]['cwd'], '/') self.assertEqual(popen_call.call_args[1]['env'], {}) wait_mock.assert_called_once_with() exit_mock.assert_called_once_with(5)
def test_execute_commands_default_cwd_exists(self, popen_call, exists_mock): wait_mock = popen_call.return_value.wait wait_mock.return_value = 0 exists_mock.return_value = True data = {"hooks": {"build": ["ble"]}} run_build_hooks(data) self.assertEqual(popen_call.call_args[0][0], ['/bin/bash', '-lc', 'ble']) self.assertEqual(popen_call.call_args[1]['shell'], False) self.assertEqual(popen_call.call_args[1]['cwd'], '/home/application/current') self.assertEqual(popen_call.call_args[1]['env'], {}) wait_mock.assert_called_once_with() exists_mock.assert_called_once_with("/home/application/current")
def deploy_action(args): heartbeat.StderrHeartbeat().start() client = Client(args.url, args.token) envs = client.register_unit(args.app_name) tasks.save_apprc_file(envs) tasks.execute_start_script(args.start_cmd) yaml_data = tasks.load_app_yaml() yaml_data["procfile"] = tasks.load_procfile() client.register_unit(args.app_name, yaml_data) client.post_app_yaml(args.app_name, yaml_data) tasks.run_build_hooks(yaml_data, envs=envs) tasks.write_circus_conf(envs=envs)
def test_execute_commands(self, popen_call): wait_mock = popen_call.return_value.wait wait_mock.return_value = 0 data = {"hooks": {"build": ["ble"]}} run_build_hooks(data, envs={'env': 'varrr'}) self.assertEqual(popen_call.call_args[0][0], ['/bin/bash', '-lc', 'ble']) self.assertEqual(popen_call.call_args[1]['shell'], False) self.assertEqual(popen_call.call_args[1]['cwd'], '/') self.assertEqual(popen_call.call_args[1]['env'], { 'env': 'varrr', 'env1': 'var1' }) wait_mock.assert_called_once_with()
def deploy_action(args): heartbeat.StderrHeartbeat().start() client = Client(args.url, args.token) envs, supported_tsuru = client.register_unit(args.app_name) save_apprc_file(envs, supported_tsuru) tasks.execute_start_script(args.start_cmd) yaml_data = tasks.load_app_yaml() client.post_app_yaml(args.app_name, yaml_data) tasks.run_build_hooks(yaml_data, envs=envs) remove_temp_env_file() yaml_data["procfile"] = tasks.load_procfile() yaml_data["processes"] = tasks.parse_procfile() client.register_unit(args.app_name, yaml_data) tasks.write_circus_conf(envs=envs)
def test_execute_commands_hooks_empty(self, subprocess_call): data = {} run_build_hooks(data) subprocess_call.assert_not_called() data = {"hooks": None} run_build_hooks(data) subprocess_call.assert_not_called() data = {"hooks": {"build": None}} run_build_hooks(data) subprocess_call.assert_not_called() data = {"hooks": {"build": []}} run_build_hooks(data) subprocess_call.assert_not_called()