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