Dzahn has submitted this change and it was merged. Change subject: (bug 15434) Periodical run of currently disabled special pages ......................................................................
(bug 15434) Periodical run of currently disabled special pages Stole mutante's refreshlinks class used for bug 16112. The idea would be to update only one page per cluster at a time, two times per year. * 1 UTC: servers less busy; doesn't overlap with any deployment window but is not too far from time used for some. https://wikitech.wikimedia.org/view/Deployments * Same cluster/monthday syntax as per refreshlink, +10 days to avoid overlap. * Each query page has its defined months. ** List from $wgDisableQueryPageUpdate, restored CamelCase in case updateSpecialPages.php cares. ** We're lucky because the disabled pages are 6 globally and 12 for en.wiki (since years ago). ** The 6 pages disabled only on en.wiki are left behind for now. Ideally, I guess we should use Tuesday and Thursday of each week in each month. s1 in the first Tue, s2 in the first Thu, s3 in the second Tue etc. This way it would always be in worktime and never same day as MW bi-weekly deploy. I've no idea how to do it, though. http://docs.puppetlabs.com/references/latest/type.html#cron Change-Id: Ia5bd4c90f8be3d047f0752536170783eb6817072 --- M manifests/misc/maintenance.pp M manifests/site.pp 2 files changed, 60 insertions(+), 0 deletions(-) Approvals: jenkins-bot: Verified Dzahn: Looks good to me, approved diff --git a/manifests/misc/maintenance.pp b/manifests/misc/maintenance.pp index c8ec58d..7fce450 100644 --- a/manifests/misc/maintenance.pp +++ b/manifests/misc/maintenance.pp @@ -393,3 +393,61 @@ } } + +class misc::maintenance::updatequerypages { + # Include this to add cron jobs calling updateSpecialPages.php on all clusters. + + file { '/home/mwdeploy/updateSpecialPages': + ensure => directory, + owner => mwdeploy, + group => mwdeploy, + mode => 0664, + } + + define updatequerypages::cronjob() { + + $cluster = regsubst($name, '@.*', '\1') + $monthday = regsubst($name, '.*@', '\1') + + Cron { + user => mwdeploy, + hour => 1, + minute => 0, + monthday => $monthday, + ensure => present, + } + + cron { "cron-updatequerypages-ancientpages-${name}": + command => "/usr/local/bin/mwscriptwikiset updateSpecialPages.php ${cluster}.dblist --override --only=AncientPages > /home/mwdeploy/updateSpecialPages/${name}-AncientPages.log 2>&1", + month => [1, 7] + } + + cron { "cron-updatequerypages-deadendpages-${name}": + command => "/usr/local/bin/mwscriptwikiset updateSpecialPages.php ${cluster}.dblist --override --only=DeadendPages > /home/mwdeploy/updateSpecialPages/${name}-DeadendPages.log 2>&1", + month => [2, 8] + } + + cron { "cron-updatequerypages-mostlinked-${name}": + command => "/usr/local/bin/mwscriptwikiset updateSpecialPages.php ${cluster}.dblist --override --only=MostLinked > /home/mwdeploy/updateSpecialPages/${name}-MostLinked.log 2>&1", + month => [3, 9] + } + + cron { "cron-updatequerypages-mostrevisions-${name}": + command => "/usr/local/bin/mwscriptwikiset updateSpecialPages.php ${cluster}.dblist --override --only=MostRevisions > /home/mwdeploy/updateSpecialPages/${name}-MostRevisions.log 2>&1", + month => [4, 10] + } + + cron { "cron-updatequerypages-wantedpages-${name}": + command => "/usr/local/bin/mwscriptwikiset updateSpecialPages.php ${cluster}.dblist --override --only=WantedPages > /home/mwdeploy/updateSpecialPages/${name}-WantedPages.log 2>&1", + month => [5, 11] + } + + cron { "cron-updatequerypages-fewestrevisions-${name}": + command => "/usr/local/bin/mwscriptwikiset updateSpecialPages.php ${cluster}.dblist --override --only=FewestRevisions > /home/mwdeploy/updateSpecialPages/${name}-FewestRevisions.log 2>&1", + month => [6, 12] + } + } + + # add cron jobs - usage: <cluster>@<day of month> + updatequerypages::cronjob { ['s1@11', 's2@12', 's3@13', 's4@14', 's5@15', 's6@16', 's7@17']: } +} diff --git a/manifests/site.pp b/manifests/site.pp index 02e91d0..ac3c45b 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -1173,6 +1173,8 @@ admins::restricted, nrpe + # To be run against PMTPA slaves + class { misc::maintenance::updatequerypages: enabled => true } # These cron jobs were left behind for some reason: -- To view, visit https://gerrit.wikimedia.org/r/33713 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ia5bd4c90f8be3d047f0752536170783eb6817072 Gerrit-PatchSet: 11 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Nemo bis <[email protected]> Gerrit-Reviewer: Andrew Bogott <[email protected]> Gerrit-Reviewer: ArielGlenn <[email protected]> Gerrit-Reviewer: Asher <[email protected]> Gerrit-Reviewer: Dzahn <[email protected]> Gerrit-Reviewer: MZMcBride <[email protected]> Gerrit-Reviewer: Nemo bis <[email protected]> Gerrit-Reviewer: Pyoungmeister <[email protected]> Gerrit-Reviewer: Reedy <[email protected]> Gerrit-Reviewer: Tim Starling <[email protected]> Gerrit-Reviewer: jenkins-bot _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
