示例#1
0
 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()
示例#2
0
 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)
示例#3
0
 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")
示例#4
0
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)
示例#5
0
 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)
示例#6
0
 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()
示例#7
0
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)
示例#8
0
 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")
示例#9
0
 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()
示例#10
0
 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()