Giuseppe Lavagetto has submitted this change and it was merged. Change subject: mediawiki: manage the apache config via puppet ......................................................................
mediawiki: manage the apache config via puppet This is the first in a series of changes that will allow to manage the apache config for mediawiki using a more standard layout. For now we just deploy apache-config via puppet using a directory resource, and importing apache-config as plain files with a submodule. We introduce tags so that it should be possible to release apache-config by simply: 1) merging the change in apache-config 2) update the submodule 3) run on the saltmaster: salt -G 'cluster:appserver*' cmd.run 'puppet agent -t --tags mw-apache-config' which should be simple enough. Also, puppet will ensure and enforce this config on servers that were down at the moment of the deploy. In this change, we leave the feature turned off by default, apart from the staging server (mw1017) Change-Id: I43126e44e96b8ae88eb5ad1958b1ce6fe5ade9f5 Signed-off-by: Giuseppe Lavagetto <[email protected]> --- M manifests/site.pp M modules/mediawiki/manifests/web.pp M modules/mediawiki/manifests/web/config.pp M modules/mediawiki/templates/apache/apache2.conf.erb 4 files changed, 17 insertions(+), 7 deletions(-) Approvals: Giuseppe Lavagetto: Looks good to me, approved jenkins-bot: Verified diff --git a/manifests/site.pp b/manifests/site.pp index bf5664d..2baf47a 100644 --- a/manifests/site.pp +++ b/manifests/site.pp @@ -1939,6 +1939,11 @@ $ganglia_aggregator = true } + if $::hostname == 'mw1017' { + $mw_use_local_resources = true + } + + if $::hostname == 'mw1070' { include misc::deployment::scap_proxy } diff --git a/modules/mediawiki/manifests/web.pp b/modules/mediawiki/manifests/web.pp index 2c15a9c..a163e84 100644 --- a/modules/mediawiki/manifests/web.pp +++ b/modules/mediawiki/manifests/web.pp @@ -13,12 +13,17 @@ $max_req_workers = inline_template('<%= ( @mem_available / @mem_per_worker ).to_i %>') } + if $mw_use_local_resources == undef { + # This is used in the apache2.conf template to switch from + # rsync-based resources to puppet-managed ones + $mw_use_local_resources = false + } + file { '/etc/apache2/apache2.conf': content => template('mediawiki/apache/apache2.conf.erb'), owner => 'root', group => 'root', mode => '0444', - require => Class['::mediawiki::web::config'], before => Service['apache'], } diff --git a/modules/mediawiki/manifests/web/config.pp b/modules/mediawiki/manifests/web/config.pp index c3f9f65..bcd4017 100644 --- a/modules/mediawiki/manifests/web/config.pp +++ b/modules/mediawiki/manifests/web/config.pp @@ -1,14 +1,10 @@ -class mediawiki::web::config ($use_local_resources = true) { +class mediawiki::web::config () { tag 'mediawiki', 'mw-apache-config' file { '/etc/apache2/wikimedia': ensure => directory, recurse => true, source => 'puppet:///modules/mediawiki/apache/config', - } - exec { 'sync_apache_config': - command => '/usr/bin/rsync -av 10.0.5.8::httpdconf/ /usr/local/apache/conf', - creates => '/usr/local/apache/conf', - require => File['/usr/local/apache'], notify => Service['apache'], + before => File['/etc/apache2/apache2.conf'], } } diff --git a/modules/mediawiki/templates/apache/apache2.conf.erb b/modules/mediawiki/templates/apache/apache2.conf.erb index 4de5d49..c6a03bc 100644 --- a/modules/mediawiki/templates/apache/apache2.conf.erb +++ b/modules/mediawiki/templates/apache/apache2.conf.erb @@ -319,7 +319,11 @@ NameVirtualHost * +<% if @mw_use_local_resources -%> +Include /etc/apache2/wikimedia/all.conf +<%- else -%> Include /usr/local/apache/conf/all.conf +<%- end -%> # Set ETags for files to not be based on inode, # since that will be different on each backend server -- To view, visit https://gerrit.wikimedia.org/r/143329 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I43126e44e96b8ae88eb5ad1958b1ce6fe5ade9f5 Gerrit-PatchSet: 12 Gerrit-Project: operations/puppet Gerrit-Branch: production Gerrit-Owner: Giuseppe Lavagetto <[email protected]> Gerrit-Reviewer: BBlack <[email protected]> Gerrit-Reviewer: BryanDavis <[email protected]> Gerrit-Reviewer: Dzahn <[email protected]> Gerrit-Reviewer: Faidon Liambotis <[email protected]> Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]> Gerrit-Reviewer: Ori.livneh <[email protected]> Gerrit-Reviewer: Reedy <[email protected]> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
