def _reload_config(self): if self._included_config is None: config = self._original_config else: config = merge_dicts(self._original_config, self._included_config, ignored_keys=['parameters']) self.script_command = config.get('script_path') self.description = replace_auth_vars(config.get('description'), self._username, self._audit_name) self.working_directory = config.get('working_directory') required_terminal = read_bool_from_config( 'requires_terminal', config, default=self._pty_enabled_default) self.requires_terminal = required_terminal ansi_enabled = read_bool_from_config( 'bash_formatting', config, default=self._ansi_enabled_default) self.ansi_enabled = ansi_enabled self.output_files = config.get('output_files', []) if config.get('scheduling'): self.schedulable = read_bool_from_config('enabled', config.get('scheduling'), default=False) if not self.script_command: raise Exception('No script_path is specified for ' + self.name)
def _reload_config(self): if self._included_config is None: config = self._original_config else: config = merge_dicts(self._original_config, self._included_config, ignored_keys=['parameters']) self.script_command = config.get('script_path') self.description = config.get('description') self.working_directory = config.get('working_directory') required_terminal = read_boolean('requires_terminal', config, self._pty_enabled_default) self.requires_terminal = required_terminal ansi_enabled = read_boolean('bash_formatting', config, self._ansi_enabled_default) self.ansi_enabled = ansi_enabled self.output_files = config.get('output_files', [])
def _reload_config(self): if self._included_config is None: config = self._original_config else: config = merge_dicts(self._original_config, self._included_config, ignored_keys=['parameters']) self.script_command = config.get('script_path') self.description = config.get('description') self.working_directory = config.get('working_directory') required_terminal = read_bool_from_config('requires_terminal', config, default=self._pty_enabled_default) self.requires_terminal = required_terminal ansi_enabled = read_bool_from_config('bash_formatting', config, default=self._ansi_enabled_default) self.ansi_enabled = ansi_enabled self.output_files = config.get('output_files', [])
def _reload(self, old_included_config): if self._included_config is None: config = self._original_config else: config = merge_dicts(self._original_config, self._included_config, ignored_keys=['parameters']) self.script_command = config.get('script_path') self.description = config.get('description') self.working_directory = config.get('working_directory') required_terminal = read_boolean('requires_terminal', config, self._pty_enabled_default) self.requires_terminal = required_terminal ansi_enabled = read_boolean('bash_formatting', config, self._ansi_enabled_default) self.ansi_enabled = ansi_enabled self.output_files = config.get('output_files', []) original_parameters_names = {p.get('name') for p in self._original_config.get('parameters', [])} if old_included_config and old_included_config.get('parameters'): old_included_param_names = {p.get('name') for p in old_included_config.get('parameters', [])} for param_name in old_included_param_names: if param_name in original_parameters_names: continue parameter = self.find_parameter(param_name) self.parameters.remove(parameter) if self._included_config is not None: included_parameter_configs = self._included_config.get('parameters', []) for parameter_config in included_parameter_configs: parameter_name = parameter_config.get('name') parameter = self.find_parameter(parameter_name) if parameter is None: parameter = ParameterModel(parameter_config, self._username, self._audit_name, lambda: self.parameters, self.parameter_values) self.parameters.append(parameter) continue else: LOGGER.warning('Parameter ' + parameter_name + ' exists in original and included file. ' + 'This is now allowed! Included parameter is ignored') continue