def save_connection_config(self) -> None: if self.name and self.url: config_parser = RawConfigParser() config_parser.add_section(SECTION_TITLE) config_parser.set(SECTION_TITLE, 'url', self.url) if self._requires_auth: config_parser.set(SECTION_TITLE, 'username', self._auth['username']) password = encode(encode_password(), self._auth['password']) config_parser.set(SECTION_TITLE, 'password', password) if self.jenkins_views: config_parser.set(SECTION_TITLE, 'views', ','.join(self.view_names)) for view in self.views: view.save_view_config() save_argus_config( config_parser, build_config_file(jenkins_connections_dir, self.name)) else: raise ConfigError( 'No data to save in JenkinsConnection config file.')
def _save_config(self) -> None: config_parser = configparser.RawConfigParser() # Save team names comma delim config_parser.add_section('manager') # Root names are name:jira_conn_name # Need to append a comma if we only have 1, else it'll treat it as an array of char instead of array of str on read root_names = ','.join([x.root_name for x in list(self._teams.values())]) if len(list(self._teams.values())) == 1: root_names = root_names + ',' print('Saving root names as: {}'.format(root_names)) config_parser.set('manager', 'team_names', root_names) for team in list(self._teams.values()): for member in team.members: member.save_config(config_parser) # [organizations] [org_names=org_1, org_2, org_3] # [organizations] [org=team_1, team_2, team_3] config_parser.add_section('organizations') config_parser.set('organizations', 'org_names', ','.join(list(self._organizations.keys()))) for org in self._organizations.keys(): config_parser.set('organizations', org, ','.join(list(self._organizations[org]))) config_path = os.path.join(conf_dir, 'teams.cfg') save_argus_config(config_parser, config_path)
def save_view_config(self) -> None: config_parser = RawConfigParser() config_parser.add_section(SECTION_TITLE) config_parser.set(SECTION_TITLE, 'job_names', ','.join(self.job_names)) save_argus_config(config_parser, build_config_file(jenkins_views_dir, self.name))
def _save_config(): config_parser = configparser.RawConfigParser() config_parser.add_section('Argus') config_parser.set('Argus', 'Browser', Config.Browser) config_parser.set('Argus', 'Show_Dependencies', utils.show_dependencies) config_parser.set('Argus', 'Show_Only_Open_Dependencies', utils.show_only_open_dependencies) conf = os.path.join(conf_dir, 'argus.cfg') save_argus_config(config_parser, conf)
def save_report_config(self) -> None: config_parser = RawConfigParser() config_parser.add_section(SECTION_TITLE) if self.connection_names: config_parser.set(SECTION_TITLE, 'connection_names', ','.join(self.connection_names)) for connection_name in self.connection_names: config_parser.add_section(connection_name) config_parser.set(connection_name, 'job_names', ','.join(self.connection_dict[connection_name])) save_argus_config(config_parser, self._parser_path)
def save_config(self): config_parser = configparser.RawConfigParser() config_parser.add_section('JiraView') config_parser.set('JiraView', 'name', self.name) config_parser.set('JiraView', 'jira_connection', self.jira_connection.connection_name) if len(self._teams) > 0: config_parser.set('JiraView', 'Teams', ','.join(list(self._teams.keys()))) for fn in list(self._jira_filters.keys()): self._jira_filters[fn].save_config(config_parser) save_argus_config(config_parser, self._build_config(self.name))
def save_config(self) -> None: """ Blindly overwrites existing config file for connection. """ config_parser = configparser.RawConfigParser() config_parser.add_section('Connection') config_parser.set('Connection', 'url', self._url) config_parser.set('Connection', 'user', encode(encode_password(), self._user)) config_parser.set('Connection', 'password', encode(encode_password(), self._pass)) config_parser.set('Connection', 'projects', ','.join(self.possible_projects)) save_argus_config(config_parser, self._build_config(self.connection_name))
def save_config(self): # .cfg file config_parser = configparser.RawConfigParser() config_parser.add_section('Config') config_parser.set('Config', 'connection_name', self.jira_connection.connection_name) config_parser.set('Config', 'project_name', self.project_name) config_parser.set('Config', 'updated', self.updated) config_parser.set('Config', 'url', self._url) config_parser.set('Config', 'custom_fields', ','.join(list(self._custom_fields.keys()))) for field in list(self._custom_fields.keys()): config_parser.set('Config', field, self._custom_fields[field]) save_argus_config(config_parser, self.config_file()) # Protect against saving during init wiping out the local data file. Shouldn't be an issue but seen it pop up # during dev once or twice. if len(self.jira_issues) > 0: save_argus_data(list(self.jira_issues.values()), self._data_file())
def save_jenkins_config(self): config_parser = RawConfigParser() if os.path.exists(jenkins_conf_file): config_parser.read(jenkins_conf_file) if not config_parser.has_section(SECTION_TITLE): config_parser.add_section(SECTION_TITLE) config_parser.set(SECTION_TITLE, 'connections', ','.join(self.connection_names)) if self.jenkins_reports: config_parser.set(SECTION_TITLE, 'reports', ','.join(self.report_names)) for connection in self.connections: connection.save_connection_config() for report in self.reports: report.save_report_config() save_argus_config(config_parser, jenkins_conf_file)
def _save_config(self): """ Saves config for JiraManager, all connections, and all views """ config_parser = configparser.RawConfigParser() config_parser.add_section('JiraManager') config_parser.set('JiraManager', 'Connections', ','.join(list(self._jira_connections.keys()))) # Need to re-save all jira connections to encode w/new password for jc in self._jira_connections: self._jira_connections[jc].save_config() print('Saved {} Jira Connections'.format(len(self._jira_connections))) if len(self.jira_views) > 0: config_parser.set('JiraManager', 'Views', ','.join(list(self.jira_views.keys()))) for vn in list(self.jira_views.keys()): self.jira_views[vn].save_config() print('Saved {} Jira Views'.format(len(self.jira_views))) if len(self.jira_dashboards) > 0: config_parser.add_section('Dashboards') for dash in self.jira_dashboards: self.jira_dashboards[dash].save_config(config_parser) save_argus_config(config_parser, jira_conf_file)