ArielGlenn has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/386389 )
Change subject: Make a few more config settings parseable per-project. ...................................................................... Make a few more config settings parseable per-project. This will permit us to use one large config file with project-specific settings for all wikis, something we want for an upcoming move of xml/sql dumps to a different server. Bug: T178893 Change-Id: I08e8ab4786f6b70d0b702d709fe5e0bf0949ba42 --- M xmldumps-backup/dumps/WikiDump.py 1 file changed, 24 insertions(+), 21 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/operations/dumps refs/changes/89/386389/1 diff --git a/xmldumps-backup/dumps/WikiDump.py b/xmldumps-backup/dumps/WikiDump.py index 09d3b6a..30b4210 100644 --- a/xmldumps-backup/dumps/WikiDump.py +++ b/xmldumps-backup/dumps/WikiDump.py @@ -101,28 +101,11 @@ return db_user, db_password def parse_conffile_globally(self): - self.db_list = MiscUtils.db_list(self.conf.get("wiki", "dblist")) - - # permit comma-separated list of files so that eg some script - # can skip all private and/or closed wikis in addition to some - # other exclusion list - to_skip = self.conf.get("wiki", "skipdblist") - if ',' in to_skip: - skipfiles = to_skip.split(',') - else: - skipfiles = [to_skip] - self.skip_db_list = [] - for skipfile in skipfiles: - self.skip_db_list.extend(MiscUtils.db_list(skipfile)) - self.skip_db_list = list(set(self.skip_db_list)) - self.private_list = MiscUtils.db_list(self.conf.get("wiki", "privatelist")) self.closed_list = MiscUtils.db_list(self.conf.get("wiki", "closedlist")) self.flow_list = MiscUtils.db_list(self.conf.get("wiki", "flowlist")) self.tablejobs = self.conf.get("wiki", "tablejobs") self.apijobs = self.conf.get("wiki", "apijobs") - - self.db_list = list(set(self.db_list) - set(self.skip_db_list)) if not self.conf.has_section('database'): self.conf.add_section('database') @@ -164,15 +147,35 @@ self.writeuptopageid = self.conf.get("tools", "writeuptopageid") self.recompressxml = self.conf.get("tools", "recompressxml") - if not self.conf.has_section('cleanup'): - self.conf.add_section('cleanup') - self.keep = self.conf.getint("cleanup", "keep") - if not self.conf.has_section('query'): self.conf.add_section('query') self.queryfile = self.conf.get("query", "queryfile") + def get_skipdbs(self, filenames): + # permit comma-separated list of files so that eg some script + # can skip all private and/or closed wikis in addition to some + # other exclusion list + if ',' in filenames: + skipfiles = filenames.split(',') + else: + skipfiles = [filenames] + skip_db_list = [] + for skipfile in skipfiles: + skip_db_list.extend(MiscUtils.db_list(skipfile)) + return list(set(skip_db_list)) + def parse_conffile_per_project(self, project_name=False): + self.db_list = MiscUtils.db_list(self.get_opt_for_proj_or_default("wiki", "dblist", 0)) + + to_skip = self.get_opt_for_proj_or_default("wiki", "skipdblist", 0) + self.skip_db_list = self.get_skipdbs(to_skip) + + self.db_list = list(set(self.db_list) - set(self.skip_db_list)) + + if not self.conf.has_section('cleanup'): + self.conf.add_section('cleanup') + self.keep = self.get_opt_for_proj_or_default("cleanup", "keep", 1) + if project_name: self.project_name = project_name -- To view, visit https://gerrit.wikimedia.org/r/386389 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I08e8ab4786f6b70d0b702d709fe5e0bf0949ba42 Gerrit-PatchSet: 1 Gerrit-Project: operations/dumps Gerrit-Branch: master Gerrit-Owner: ArielGlenn <ar...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits