We noticed the Parsoid service on Beta-Cluster-Infrastructure deployment-parsoid05 refuses to start.
The Jenkins job apparently manage to install all the dependencies and does start the service but it dies right away:
From /data/project/parsoid/parsoid.log:
module.js:340 throw err; ^ Error: Cannot find module '/srv/deployment/parsoid/parsoid/api/server.js' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Function.Module.runMain (module.js:497:10) at startup (node.js:119:16) at node.js:902:3
There is no /api/ directory available.
Related configuration files that are provided by puppet:
/etc/init/parsoid.conf:
# vim: set ft=upstart: ##################################################################### ### THIS FILE IS MANAGED BY PUPPET ### puppet:///files/misc/parsoid.upstart ##################################################################### description "Parsoid HTTP service" start on (local-filesystem and net-device-up IFACE!=lo) stop on runlevel [!2345] # up ulimit -n a bit limit nofile 10000 10000 setuid "parsoid" setgid "parsoid" env DEFAULTFILE=/etc/default/parsoid # Basic built-in defaults. Overridden by whatever # is defined in the DEFAULTFILE defined above. env VCAP_APP_PORT="8000" env NODE_PATH="/var/lib/parsoid/deploy/node_modules" env PARSOID_BASE_PATH="/var/lib/parsoid/deploy/src" env PARSOID_LOG_FILE="/dev/null" env PARSOID_SETTINGS_FILE="../conf/wmf/localsettings.js" respawn # wait 60 seconds for a graceful restart before killing the master kill timeout 60 script if [ -f "$DEFAULTFILE" ] ; then . "$DEFAULTFILE" fi DAEMON_ARGS="-c $PARSOID_SETTINGS_FILE" chdir "$PARSOID_BASE_PATH" exec /usr/bin/nodejs api/server.js $DAEMON_ARGS < /dev/null >> "$PARSOID_LOG_FILE" 2>&1 end script
/etc/default/parsoid:
##################################################################### ### THIS FILE IS MANAGED BY PUPPET ### puppet:///templates/misc/parsoid.default ##################################################################### # File where the parsoid daemon will write stdin and stdout to PARSOID_LOG_FILE=/data/project/parsoid/parsoid.log # Checkout of mediawiki/services/parsoid PARSOID_BASE_PATH=/srv/deployment/parsoid/parsoid # Checkout of mediawiki/services/parsoid/deploy NODE_PATH=/srv/deployment/parsoid/parsoid/node_modules # Checkout of mediawiki/services/parsoid/deploy PARSOID_SETTINGS_FILE=/srv/deployment/parsoid/deploy/conf/wmf/betalabs.localsettings.js