BryanDavis has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/387158 )
Change subject: Add BounceHandler role ...................................................................... Add BounceHandler role Add a role to provision the BounceHandler extension. The role also tries to setup postfix to forward bounces to the BounceHandler api. This is probably tricky to actually use however since the postfix server is still configured to trap all messages inside the VM. It would be neat to figure out how to make some set of addresses always bounce, but there was no obvious means for that in the documentation searches I've done so far. Change-Id: Ia7a7443bbd70e7182909a5b7c163f16ffcf5bf43 --- M puppet/modules/postfix/manifests/init.pp M puppet/modules/postfix/templates/main.cf.erb A puppet/modules/role/manifests/bouncehandler.pp A puppet/modules/role/templates/bouncehandler/aliases.erb A puppet/modules/role/templates/bouncehandler/virtual.erb 5 files changed, 41 insertions(+), 2 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/vagrant refs/changes/58/387158/1 diff --git a/puppet/modules/postfix/manifests/init.pp b/puppet/modules/postfix/manifests/init.pp index 9282bbb..b8f52c4 100644 --- a/puppet/modules/postfix/manifests/init.pp +++ b/puppet/modules/postfix/manifests/init.pp @@ -14,7 +14,7 @@ install_options => [ '--force-yes' ], } - package { 'postfix': } + package { ['postfix', 'postfix-pcre']: } file { '/etc/postfix': ensure => directory, @@ -38,6 +38,13 @@ mode => '0444', } + file { '/etc/postfix/aliases': + content => '', + owner => 'root', + group => 'root', + mode => '0444', + } + exec { 'postmap_virtual': command => 'postmap /etc/postfix/virtual', subscribe => File['/etc/postfix/virtual'], diff --git a/puppet/modules/postfix/templates/main.cf.erb b/puppet/modules/postfix/templates/main.cf.erb index 9ebd232..4affa00 100644 --- a/puppet/modules/postfix/templates/main.cf.erb +++ b/puppet/modules/postfix/templates/main.cf.erb @@ -1 +1,2 @@ -virtual_alias_maps = regexp:/etc/postfix/virtual +alias_maps = hash:/etc/postfix/aliases +virtual_alias_maps = pcre:/etc/postfix/virtual diff --git a/puppet/modules/role/manifests/bouncehandler.pp b/puppet/modules/role/manifests/bouncehandler.pp new file mode 100644 index 0000000..a65a834 --- /dev/null +++ b/puppet/modules/role/manifests/bouncehandler.pp @@ -0,0 +1,28 @@ +# == Class: role::bouncehandler +# Installs the [BounceHandler][1] extension which allows wikis to handle +# bounce emails efficiently. +# +# [1] https://www.mediawiki.org/wiki/Extension:BounceHandler +# +class role::bouncehandler { + include ::postfix + include ::role::mediawiki + + mediawiki::extension { 'BounceHandler': + needs_update => true, + } + + File<|title == '/etc/postfix/virtual'|> { + content => template('role/bouncehandler/virtual.erb'), + owner => 'root', + group => 'root', + mode => '0444', + } + File<|title == '/etc/postfix/aliases'|> { + content => template('role/bouncehandler/aliases.erb'), + owner => 'root', + group => 'root', + mode => '0444', + } +} + diff --git a/puppet/modules/role/templates/bouncehandler/aliases.erb b/puppet/modules/role/templates/bouncehandler/aliases.erb new file mode 100644 index 0000000..454df64 --- /dev/null +++ b/puppet/modules/role/templates/bouncehandler/aliases.erb @@ -0,0 +1 @@ +curl_email: "|curl -d action=bouncehandler --data-urlencode email@- http://<%= scope['::role::mediawiki::hostname'] %><%= scope['::port_fragment'] %>/w/api.php" diff --git a/puppet/modules/role/templates/bouncehandler/virtual.erb b/puppet/modules/role/templates/bouncehandler/virtual.erb new file mode 100644 index 0000000..d15d829 --- /dev/null +++ b/puppet/modules/role/templates/bouncehandler/virtual.erb @@ -0,0 +1,2 @@ +/wiki-[\w.]+-\w+-\w+-\w...............@<%= scope['::role::mediawiki::hostname'] %>/ curl_email +/.+/ vagrant -- To view, visit https://gerrit.wikimedia.org/r/387158 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia7a7443bbd70e7182909a5b7c163f16ffcf5bf43 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/vagrant Gerrit-Branch: master Gerrit-Owner: BryanDavis <bda...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits