Adamw has uploaded a new change for review.
https://gerrit.wikimedia.org/r/96227
Change subject: SmashPig payments listener and role
......................................................................
SmashPig payments listener and role
Change-Id: Ie4484a909180325ea27e37419216c845bac15936
---
M .gitignore
M puppet/manifests/roles.pp
A puppet/modules/composer/manifests/init.pp
M puppet/modules/postfix/manifests/init.pp
A puppet/modules/smashpig/manifests/init.pp
A puppet/modules/smashpig/templates/apache-site.erb
A puppet/modules/smashpig/templates/config.php.erb
7 files changed, 77 insertions(+), 3 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/vagrant
refs/changes/27/96227/1
diff --git a/.gitignore b/.gitignore
index 98f6efd..6a43f6b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,6 +10,7 @@
/settings.d
!/settings.d/README
!/settings.d/puppet-managed/README
+/SmashPig
/twig
/puppet/manifests/manifests.d
!/puppet/manifests/manifests.d/README
diff --git a/puppet/manifests/roles.pp b/puppet/manifests/roles.pp
index 2c7fc28..943d5fc 100644
--- a/puppet/manifests/roles.pp
+++ b/puppet/manifests/roles.pp
@@ -79,6 +79,7 @@
class role::fundraising {
include role::centralnotice
include role::payments
+ include role::payments::listener
include role::message_queue
include role::crm
@@ -158,6 +159,10 @@
}
}
+class role::payments::listener {
+ include ::smashpig
+}
+
class role::message_queue {
class { '::activemq': }
}
diff --git a/puppet/modules/composer/manifests/init.pp
b/puppet/modules/composer/manifests/init.pp
new file mode 100644
index 0000000..269ac95
--- /dev/null
+++ b/puppet/modules/composer/manifests/init.pp
@@ -0,0 +1,8 @@
+class composer {
+ include ::php
+
+ exec { 'fetch and install composer':
+ command => "curl -sS https://getcomposer.org/installer | php --
--install-dir=/usr/local/bin",
+ creates => "/usr/local/bin/composer.phar",
+ }
+}
diff --git a/puppet/modules/postfix/manifests/init.pp
b/puppet/modules/postfix/manifests/init.pp
index 781dcbd..39a1ae6 100644
--- a/puppet/modules/postfix/manifests/init.pp
+++ b/puppet/modules/postfix/manifests/init.pp
@@ -7,7 +7,7 @@
owner => root,
group => root,
mode => 0644,
- content => template('postfix/main.cf.erb');
+ content => template('postfix/main.cf.erb'),
}
#TODO: postmap
@@ -15,7 +15,8 @@
owner => root,
group => root,
mode => 0644,
- content => template('postfix/virtual.erb');
+ content => template('postfix/virtual.erb'),
+ require => Package['postfix'],
}
exec { 'postmap virtual':
@@ -30,6 +31,6 @@
Exec['postmap virtual'],
],
ensure => running,
- enable => true;
+ enable => true,
}
}
diff --git a/puppet/modules/smashpig/manifests/init.pp
b/puppet/modules/smashpig/manifests/init.pp
new file mode 100644
index 0000000..66b302d
--- /dev/null
+++ b/puppet/modules/smashpig/manifests/init.pp
@@ -0,0 +1,40 @@
+class smashpig(
+ $site_name = 'listener.dev',
+ $dir = '/vagrant/SmashPig',
+) {
+ include ::php
+ include ::apache
+ include ::git
+ include ::composer
+
+ @git::clone { 'wikimedia/fundraising/SmashPig':
+ directory => $dir,
+ }
+
+ file { "${dir}/config.php":
+ content => template('smashpig/config.php.erb'),
+ require => Git::Clone['wikimedia/fundraising/SmashPig'],
+ }
+
+ file { "${dir}/PublicHttp/.htaccess":
+ source => "${dir}/PublicHttp/.htaccess.sample",
+ require => Git::Clone['wikimedia/fundraising/SmashPig'],
+ }
+
+ exec { 'composer dependencies':
+ command => '/usr/local/bin/composer.phar install',
+ creates => "${dir}/vendor/symfony",
+ cwd => $dir,
+ }
+
+ @apache::site { 'listener':
+ ensure => present,
+ content => template('smashpig/apache-site.erb'),
+ require => [
+ File["${dir}/config.php"],
+ File["${dir}/PublicHttp/.htaccess"],
+ Exec['composer dependencies'],
+ Apache::Mod['rewrite'],
+ ],
+ }
+}
diff --git a/puppet/modules/smashpig/templates/apache-site.erb
b/puppet/modules/smashpig/templates/apache-site.erb
new file mode 100644
index 0000000..1e98f1e
--- /dev/null
+++ b/puppet/modules/smashpig/templates/apache-site.erb
@@ -0,0 +1,8 @@
+DocumentRoot "<%= scope.lookupvar('smashpig::dir') %>/PublicHttp"
+
+ServerName <%= scope.lookupvar('smashpig::site_name') %>
+
+<Directory "<%= scope.lookupvar('smashpig::dir') %>/PublicHttp">
+ Options -Indexes
+ AllowOverride all
+</Directory>
diff --git a/puppet/modules/smashpig/templates/config.php.erb
b/puppet/modules/smashpig/templates/config.php.erb
new file mode 100644
index 0000000..c60984f
--- /dev/null
+++ b/puppet/modules/smashpig/templates/config.php.erb
@@ -0,0 +1,11 @@
+<?php
+
+// TODO: set test provider URLs
+
+$config = array(
+ 'default' => array(
+ 'stomp' => array(
+ 'lib-path' => "<%= scope.lookupvar('crm::dir')
%>/sites/all/modules/queue2civicrm/Stomp.php",
+ ),
+ ),
+);
--
To view, visit https://gerrit.wikimedia.org/r/96227
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie4484a909180325ea27e37419216c845bac15936
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/vagrant
Gerrit-Branch: master
Gerrit-Owner: Adamw <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits