Ori.livneh has submitted this change and it was merged. Change subject: mediawiki: add some in-line documentation ......................................................................
mediawiki: add some in-line documentation Change-Id: If95300be7f3f44d20ec424144c85989859517a9f --- D modules/mediawiki/files/profile.d_add_scap_to_path.sh M modules/mediawiki/manifests/init.pp M modules/mediawiki/manifests/php.pp M modules/mediawiki/manifests/scap.pp M modules/mediawiki/templates/mediawiki.sh.erb 5 files changed, 52 insertions(+), 6 deletions(-) Approvals: Ori.livneh: Looks good to me, approved jenkins-bot: Verified diff --git a/modules/mediawiki/files/profile.d_add_scap_to_path.sh b/modules/mediawiki/files/profile.d_add_scap_to_path.sh deleted file mode 100644 index 3bf6033..0000000 --- a/modules/mediawiki/files/profile.d_add_scap_to_path.sh +++ /dev/null @@ -1,4 +0,0 @@ -# Add scap to $PATH for non-root users -if [ "$(id -u)" -ne "0" ]; then - export PATH="$PATH:/srv/deployment/scap/scap/bin" -fi diff --git a/modules/mediawiki/manifests/init.pp b/modules/mediawiki/manifests/init.pp index bab64bc..6f4cfa0 100644 --- a/modules/mediawiki/manifests/init.pp +++ b/modules/mediawiki/manifests/init.pp @@ -1,3 +1,14 @@ +# == Class: mediawiki +# +# MediaWiki is the collaborative editing software that runs Wikipedia. +# It powers some of the most highly-trafficked sites on the web, serving +# content in over a hundred languages to more than half a billion people +# each month. +# +# This module configures Wikimedia's execution environment for +# MediaWiki, which comprises software packages and service +# configuration. +# class mediawiki { include ::mediawiki::cgroup include ::mediawiki::packages @@ -12,7 +23,10 @@ include ::mediawiki::hhvm } - # Increase scheduling priority of SSHD + + # Increase the scheduling priority of sshd so we can still + # log in remotely in cases of overload. + file { '/etc/init/ssh.override': content => "nice -10\n", owner => 'root', diff --git a/modules/mediawiki/manifests/php.pp b/modules/mediawiki/manifests/php.pp index db78ada..a3d08aa 100644 --- a/modules/mediawiki/manifests/php.pp +++ b/modules/mediawiki/manifests/php.pp @@ -1,3 +1,7 @@ +# == Class: mediawiki::php +# +# Packages and .ini files for PHP5 extensions. +# class mediawiki::php { include ::mediawiki::packages diff --git a/modules/mediawiki/manifests/scap.pp b/modules/mediawiki/manifests/scap.pp index 944dc91..2d40664 100644 --- a/modules/mediawiki/manifests/scap.pp +++ b/modules/mediawiki/manifests/scap.pp @@ -1,3 +1,11 @@ +# == Class: mediawiki::scap +# +# 'scap' is the command-line tool deployment tool we use to push +# MediaWiki code and configuration changes. This module ensures that +# scap is installed, that the shell environment is configured for +# MediaWiki, and that the MediaWiki deployment directory exists and +# contains a copy of MediaWiki. +# class mediawiki::scap { include ::mediawiki::users @@ -5,10 +13,17 @@ $mediawiki_staging_dir = '/srv/mediawiki-staging' $scap_bin_dir = '/srv/deployment/scap/scap/bin' + + # 'scap' is the command-line tool we use to push MediaWiki changes + # to the webapp servers. The name stands for 'sync-common-all-php'. + package { 'scap': ensure => latest, provider => 'trebuchet', } + + + # /srv/mediawiki is the root path of the MediaWiki deployment tree. file { $mediawiki_deployment_dir: ensure => directory, @@ -17,6 +32,11 @@ mode => '0775', } + + # /etc/profile.d/mediawiki.sh declares the MEDIAWIKI_DEPLOYMENT_DIR + # and MEDIAWIKI_STAGING_DIR environment variables and adds scap to + # $PATH for users in the wikidev group. + file { '/etc/profile.d/mediawiki.sh': content => template('mediawiki/mediawiki.sh.erb'), owner => 'root', @@ -24,6 +44,10 @@ mode => '0444', } + + # If this is a new install, populate /srv/mediawiki by retrieving + # the current MediaWiki deployment tree from the deployment server. + exec { 'fetch_mediawiki': command => "${scap_bin_dir}/sync-common", creates => "${mediawiki_deployment_dir}/docroot", diff --git a/modules/mediawiki/templates/mediawiki.sh.erb b/modules/mediawiki/templates/mediawiki.sh.erb index 02a9606..3f17784 100644 --- a/modules/mediawiki/templates/mediawiki.sh.erb +++ b/modules/mediawiki/templates/mediawiki.sh.erb @@ -1,4 +1,12 @@ # MediaWiki-related shell environment variables -PATH="$PATH:/srv/deployment/scap/scap/bin" + MEDIAWIKI_DEPLOYMENT_DIR="<%= @mediawiki_deployment_dir %>" MEDIAWIKI_STAGING_DIR="<%= @mediawiki_staging_dir %>" + + +# Members of the wikidev group are deployers, so we add scap's bin +# directory to their $PATH. + +if groups | grep -qw wikidev; then + PATH="${PATH}:/srv/deployment/scap/scap/bin" +fi -- To view, visit https://gerrit.wikimedia.org/r/160225 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: If95300be7f3f44d20ec424144c85989859517a9f Gerrit-PatchSet: 1 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Ori.livneh <o...@wikimedia.org> Gerrit-Reviewer: Ori.livneh <o...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits