Exemplo n.º 1
0
            def func(args):
                self._set_paths()
                parameters = functions.parse_parameters(
                    loader=self,
                    parameters=copy.deepcopy(command.get('parameters', {})),
                    args=vars(args))
                task_config = {
                    'retries': 0,
                    'retry_interval': 1,
                    'thread_pool_size': 1
                }
                global_task_config = self.config.task
                command_task_config = command.get('task', {})
                task_config.update(global_task_config)
                task_config.update(command_task_config)
                env = self.env

                event_cls = command.get('event_cls',
                                        self.config.event_cls)
                output.setup_output(event_cls=event_cls,
                                    verbose=args.verbose,
                                    env=env,
                                    command=command)

                return env.execute(
                    workflow=command['workflow'],
                    parameters=parameters,
                    task_retries=task_config['retries'],
                    task_retry_interval=task_config['retry_interval'],
                    task_thread_pool_size=task_config['thread_pool_size'])
Exemplo n.º 2
0
            def func(args):
                self._set_paths()
                parameters = functions.parse_parameters(
                    loader=self,
                    parameters=copy.deepcopy(command.get('parameters', {})),
                    args=vars(args))
                task_config = {
                    'retries': 0,
                    'retry_interval': 1,
                    'thread_pool_size': 1
                }
                global_task_config = self.config.task
                command_task_config = command.get('task', {})
                task_config.update(global_task_config)
                task_config.update(command_task_config)
                env = self.env

                event_cls = command.get('event_cls', self.config.event_cls)
                output.setup_output(event_cls=event_cls,
                                    verbose=args.verbose,
                                    env=env,
                                    command=command)

                return env.execute(
                    workflow=command['workflow'],
                    parameters=parameters,
                    task_retries=task_config['retries'],
                    task_retry_interval=task_config['retry_interval'],
                    task_thread_pool_size=task_config['thread_pool_size'])
Exemplo n.º 3
0
        def func(args):
            bin_dir = path(sys.executable).dirname()
            current_path_env = os.environ.get('PATH', '')
            if bin_dir not in current_path_env:
                os.environ['PATH'] = '{}{}{}'.format(bin_dir,
                                                     os.pathsep,
                                                     current_path_env)
            self._set_python_path()
            parameters = functions.parse_parameters(
                loader=self,
                parameters=copy.deepcopy(command.get('parameters', {})),
                args=vars(args))
            task_config = {
                'retries': 0,
                'retry_interval': 1,
                'thread_pool_size': 1
            }
            global_task_config = self.config.task
            command_task_config = command.get('task', {})
            task_config.update(global_task_config)
            task_config.update(command_task_config)
            env = self._load_env()

            event_cls = command.get('event_cls',
                                    self.config.event_cls)
            output.setup_output(event_cls=event_cls,
                                verbose=args.verbose,
                                env=env,
                                command=command)

            env.execute(workflow=command['workflow'],
                        parameters=parameters,
                        task_retries=task_config['retries'],
                        task_retry_interval=task_config['retry_interval'],
                        task_thread_pool_size=task_config['thread_pool_size'])
Exemplo n.º 4
0
 def test_event_cls_factory(self):
     command = {'hello': 'world'}
     setup_output(event_cls='{}:MockEventFactory'.format(__name__),
                  verbose=True,
                  env=STUB,
                  command=command)
     self.assertTrue(logs.EVENT_CLASS.r_verbose)
     self.assertIs(logs.EVENT_CLASS.r_env, STUB)
     self.assertEqual(logs.EVENT_CLASS.r_command, command)
Exemplo n.º 5
0
 def test_event_cls_factory(self):
     command = {'hello': 'world'}
     setup_output(event_cls='{}:MockEventFactory'.format(__name__),
                  verbose=True,
                  env=STUB,
                  command=command)
     self.assertTrue(logs.EVENT_CLASS.r_verbose)
     self.assertIs(logs.EVENT_CLASS.r_env, STUB)
     self.assertEqual(logs.EVENT_CLASS.r_command, command)
Exemplo n.º 6
0
 def test_none_verbose(self):
     setup_output(event_cls=None, verbose=False, env=None, command={})
     self.assertIsNot(logs.stdout_event_out, STUB)
Exemplo n.º 7
0
 def test_event_cls(self):
     setup_output(event_cls='{}:MockEvent'.format(__name__),
                  verbose=False,
                  env=None,
                  command={})
     self.assertIs(logs.EVENT_CLASS, MockEvent)
Exemplo n.º 8
0
 def test_no_event_cls(self):
     setup_output(event_cls=None, verbose=False, env=None, command={})
     self.assertIs(logs.EVENT_CLASS, Event)
Exemplo n.º 9
0
 def test_none_verbose(self):
     setup_output(event_cls=None,
                  verbose=False,
                  env=None,
                  command={})
     self.assertIsNot(logs.stdout_event_out, STUB)
Exemplo n.º 10
0
 def test_event_cls(self):
     setup_output(event_cls='{}:MockEvent'.format(__name__),
                  verbose=False,
                  env=None,
                  command={})
     self.assertIs(logs.EVENT_CLASS, MockEvent)
Exemplo n.º 11
0
 def test_no_event_cls(self):
     setup_output(event_cls=None,
                  verbose=False,
                  env=None,
                  command={})
     self.assertIs(logs.EVENT_CLASS, Event)