Aaron Schulz has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/195337

Change subject: Added the jobchron daemon that complements jobrunner
......................................................................

Added the jobchron daemon that complements jobrunner

Change-Id: I50594c81c98414257234e1038d90ef04232316b9
---
A modules/mediawiki/files/jobchron.conf
M modules/mediawiki/files/jobrunner.conf
M modules/mediawiki/manifests/jobrunner.pp
M modules/mediawiki/templates/jobrunner/jobrunner.default.erb
4 files changed, 45 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/37/195337/1

diff --git a/modules/mediawiki/files/jobchron.conf 
b/modules/mediawiki/files/jobchron.conf
new file mode 100644
index 0000000..ebabee8
--- /dev/null
+++ b/modules/mediawiki/files/jobchron.conf
@@ -0,0 +1,30 @@
+# jobchron -- Continuously maintain MediaWiki job queue
+description "MediaWiki job queue chron loop"
+
+start on (runlevel [2345] and net-device-up IFACE!=lo)
+stop on runlevel [!2345]
+
+umask 022
+
+pre-start script
+  mkdir -p -m0755 /var/run/jobchron
+  [ ! -r /etc/default/jobrunner ] && { stop; exit 0; }
+  . /etc/default/jobrunner
+  mkdir -p -m0755 $(dirname 
"${JOBCHRON_LOGFILE:=/var/log/mediawiki/jobchron.log}")
+  [ ! -r "${JOBRUNNER_CONFIG:=/etc/jobrunner.conf}" ] && { stop; exit 1; }
+  php -r "exit( !@is_array( json_decode( file_get_contents( 
'$JOBRUNNER_CONFIG' ) ) ) );" >/dev/null 2>&1
+  [ $? -eq 0 ] || { stop; exit 1; }
+end script
+
+script
+  . /etc/default/jobrunner
+  exec start-stop-daemon --quiet --start --pidfile 
"${JOBCHRON_PID:-/var/run/jobchron/pid}" \
+    --chuid "${JOBRUNNER_USER:-nobody}:${JOBRUNNER_GROUP:-nogroup}" 
--make-pidfile \
+       --exec /usr/bin/php -- 
/srv/deployment/jobrunner/jobrunner/redisJobChronService \
+    --config-file="${JOBRUNNER_CONFIG:-/etc/jobrunner.conf}" $DAEMON_OPTS \
+       >> "${JOBCHRON_LOGFILE:-/var/log/mediawiki/jobchron.log}" 2>&1
+end script
+
+respawn
+
+# vim: set ft=upstart:
diff --git a/modules/mediawiki/files/jobrunner.conf 
b/modules/mediawiki/files/jobrunner.conf
index 056b79a..4dec5df 100644
--- a/modules/mediawiki/files/jobrunner.conf
+++ b/modules/mediawiki/files/jobrunner.conf
@@ -1,5 +1,5 @@
 # jobrunner -- Continuously process a MediaWiki job queue
-description "MediaWiki job queue loop"
+description "MediaWiki job queue runner loop"
 
 start on (runlevel [2345] and net-device-up IFACE!=lo)
 stop on runlevel [!2345]
diff --git a/modules/mediawiki/manifests/jobrunner.pp 
b/modules/mediawiki/manifests/jobrunner.pp
index b57fda0..5972432 100644
--- a/modules/mediawiki/manifests/jobrunner.pp
+++ b/modules/mediawiki/manifests/jobrunner.pp
@@ -40,6 +40,14 @@
         notify => Service['jobrunner'],
     }
 
+    file { '/etc/init/jobchron.conf':
+       source => 'puppet:///modules/mediawiki/jobchron.conf',
+        owner  => 'root',
+        group  => 'root',
+        mode   => '0444',
+        notify => Service['jobchron'],
+    }
+
     file { '/etc/jobrunner':
         ensure => directory,
         owner  => 'root',
@@ -61,6 +69,11 @@
         provider => 'upstart',
     }
 
+    service { 'jobchron':
+        ensure   => running,
+        provider => 'upstart',
+    }
+
     file { '/etc/logrotate.d/mediawiki_jobrunner':
         source  => 
'puppet:///modules/mediawiki/logrotate.d_mediawiki_jobrunner',
         owner   => 'root',
diff --git a/modules/mediawiki/templates/jobrunner/jobrunner.default.erb 
b/modules/mediawiki/templates/jobrunner/jobrunner.default.erb
index 9ada7f3..d3c8747 100644
--- a/modules/mediawiki/templates/jobrunner/jobrunner.default.erb
+++ b/modules/mediawiki/templates/jobrunner/jobrunner.default.erb
@@ -1,6 +1,7 @@
 # Options for the MediaWiki jobrunner
 JOBRUNNER_CONFIG="/etc/jobrunner/jobrunner.conf"
 JOBRUNNER_PID="/var/run/jobrunner/pid"
+JOBCHRON_PID="/var/run/jobchron/pid"
 JOBRUNNER_USER="<%= scope.lookupvar('::mediawiki::users::web') %>"
 JOBRUNNER_GROUP="<%= scope.lookupvar('::mediawiki::users::web') %>"
 DAEMON_OPTS=""

-- 
To view, visit https://gerrit.wikimedia.org/r/195337
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I50594c81c98414257234e1038d90ef04232316b9
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Aaron Schulz <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to