def start_work(self): executor = Executor( WorkRequest(request.get_json()), self.app.rapid_config.master_uri, workspace=self.app.rapid_config.workspace, quarantine=self.app.rapid_config.quarantine_directory, verify_certs=self.app.rapid_config.verify_certs, rapid_config=self.app.rapid_config) executor.verify_work_request() executor.start()
def test_start(self, threading): """ rapid-unit: Rapid Client:Remote Execution:Can remotely execute code on client :return: :rtype: """ executor = Executor(Mock(), "bogus") executor.start() threading.Thread.assert_called_with(target=executor._start_child_process)
def run_action_instance(self, app, action_instance_id): # type: (Flask, int) -> None communicator = ClientCommunicator( self.client_config.master_uri, self.client_config.quarantine_directory, app, self.client_config.verify_certs) self.client_config.is_single_use = True communicator.register(self.client_config) request_json = communicator.get_work_request_by_action_instance_id( action_instance_id) executor = Executor(WorkRequest(request_json), self.client_config.master_uri, workspace=self.client_config.workspace, quarantine=self.client_config.quarantine_directory, verify_certs=self.client_config.verify_certs, rapid_config=self.client_config) executor.verify_work_request() executor.start(False)
def test_start_non_threaded(self, child_process, threading): # rapid-unit: Rapid Client:Run Action Instance:Can run an action instance from command line. executor = Executor(Mock(), 'bogus') executor.start(False) self.assertEqual(0, threading.Thread.call_count) child_process.assert_called_with()