Adamw has uploaded a new change for review. https://gerrit.wikimedia.org/r/108861
Change subject: Merge "Adding owner and group parameters to git::clone" ...................................................................... Merge "Adding owner and group parameters to git::clone" Change-Id: If1f9f9ee6be4c9d7051cd8cb628fceceb98d96da --- M .gitignore M README M Vagrantfile M puppet/files/.gitignore M puppet/manifests/packages.pp M puppet/manifests/roles.pp A puppet/modules/activemq/lib/puppet/type/tarball.rb A puppet/modules/activemq/manifests/init.pp A puppet/modules/activemq/templates/activemq.xml.erb A puppet/modules/activemq/templates/service-activemq.erb A puppet/modules/crm/manifests/apache.pp A puppet/modules/crm/manifests/civicrm.pp A puppet/modules/crm/manifests/drupal.pp A puppet/modules/crm/manifests/init.pp A puppet/modules/crm/templates/civicrm-install.php.erb A puppet/modules/crm/templates/crm-apache-site.erb A puppet/modules/crm/templates/settings-local.php.erb A puppet/modules/phpmailer/manifests/init.pp A puppet/modules/postfix/manifests/init.pp A puppet/modules/postfix/templates/main.cf.erb A puppet/modules/postfix/templates/virtual.erb A puppet/modules/twig/manifests/init.pp M puppet/templates/fr-config.php.erb 23 files changed, 544 insertions(+), 23 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/vagrant refs/changes/61/108861/1 diff --git a/.gitignore b/.gitignore index 98a04d4..98f6efd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,16 @@ /.vagrant /.rbenv-version +/crm /no-update /Vagrantfile-extra.rb /Roles.yaml /Roles -/LocalSettings.php /mediawiki/ +/phpmailer /settings.d !/settings.d/README !/settings.d/puppet-managed/README +/twig /puppet/manifests/manifests.d !/puppet/manifests/manifests.d/README !/puppet/manifests/manifests.d/dummy.pp diff --git a/README b/README index dcef127..c331e77 100644 --- a/README +++ b/README @@ -38,8 +38,14 @@ Canonical, retrieve some additional packages, and install and configure each of them in turn. -If it all worked, you should be able to browse to http://127.0.0.1:8080/ and -see the main page of your MediaWiki instance. +Now, edit your host system's /etc/hosts file, and add this line: + + 10.11.12.13 wiki.dev + +If it all worked, you should be able to browse to http://wiki.dev/ and +see the main page of your MediaWiki instance. You can also browse to the +forwarded port, http://127.0.0.1:8080/ (but, note that this URL will not +work correctly if you are hosting more than one virtualhost on your guest OS). ## Use diff --git a/Vagrantfile b/Vagrantfile index c451c97..d0d7ebe 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -70,7 +70,11 @@ config.vm.provider :virtualbox do |vb| # See http://www.virtualbox.org/manual/ch08.html for additional options. - vb.customize ['modifyvm', :id, '--memory', '768'] + if roles_enabled.include?('fundraising') + vb.customize ['modifyvm', :id, '--memory', '2048'] + else + vb.customize ['modifyvm', :id, '--memory', '768'] + end vb.customize ['modifyvm', :id, '--ostype', 'Ubuntu_64'] vb.customize ['modifyvm', :id, '--ioapic', 'on'] # Bug 51473 diff --git a/puppet/files/.gitignore b/puppet/files/.gitignore index d3c2f59..002621b 100644 --- a/puppet/files/.gitignore +++ b/puppet/files/.gitignore @@ -1 +1,2 @@ # .gitignore +civicrm-install.php diff --git a/puppet/manifests/packages.pp b/puppet/manifests/packages.pp index 9e5e39b..5821d39 100644 --- a/puppet/manifests/packages.pp +++ b/puppet/manifests/packages.pp @@ -12,6 +12,10 @@ # same name. If you need anything fancy, create a module instead. # +class packages::drush { + package { 'drush': } +} + class packages::imagemagick { package { 'imagemagick': } } diff --git a/puppet/manifests/roles.pp b/puppet/manifests/roles.pp index fe38b91..a380014 100644 --- a/puppet/manifests/roles.pp +++ b/puppet/manifests/roles.pp @@ -82,7 +82,11 @@ # and sets up the ContributionTracking, FundraisingEmailUnsubscribe, and # DonationInterface extensions. class role::fundraising { - include role::mediawiki + include role::centralnotice + include role::payments + include role::message_queue + include role::crm + include packages::rsyslog $rsyslog_max_message_size = '64k' @@ -94,32 +98,62 @@ hasrestart => true, } - file { '/etc/rsyslog.d/60-payments.conf': - content => template('fr-payments-rsyslog.conf.erb'), - require => Package['rsyslog'], - notify => Service['rsyslog'], + # TODO: import from frack + #file { '/etc/rsyslog.d/60-payments.conf': + # content => template('fr-payments-rsyslog.conf.erb'), + # require => Package['rsyslog'], + # notify => Service['rsyslog'], + #} +} + +class role::crm { + $dir = "/vagrant/crm" + $crm_site_name = 'crm.dev' + + class { '::crm': + dir => $dir, + site_name => $crm_site_name, + } +} + +class role::centralnotice { + include role::mediawiki + + @mediawiki::extension { [ + 'CentralNotice', + 'Translate', + ]: + needs_update => true, + } +} + +class role::payments +inherits role::mediawiki { + include ::twig + + Class['::mediawiki'] { + branch => 'fundraising/1.22', } - exec { 'checkout fundraising branch': - command => 'git checkout --track origin/fundraising/1.22', - unless => 'git branch --list | grep -q fundraising/1.22', - cwd => $mediawiki::dir, - require => Exec['mediawiki setup'], - } + @mediawiki::extension { 'ParserFunctions': } - mediawiki::extension { [ 'ContributionTracking', 'ParserFunctions' ]: } + @mediawiki::extension { [ + 'ContributionTracking', + ]: + needs_update => true, + } mediawiki::extension { 'FundraisingEmailUnsubscribe': entrypoint => 'FundraiserUnsubscribe.php', + settings => "\$wgTwigPath = '${twig::dir}/current/lib/Twig';", + require => Class['::twig'], } - mediawiki::extension { 'DonationInterface': - entrypoint => 'donationinterface.php', + @mediawiki::extension { 'DonationInterface': settings => template('fr-config.php.erb'), needs_update => true, require => [ - File['/etc/rsyslog.d/60-payments.conf'], - Exec['checkout fundraising branch'], + # path BROKEN File['/etc/rsyslog.d/60-payments.conf'], Mediawiki::Extension[ 'ContributionTracking', 'FundraisingEmailUnsubscribe', @@ -129,6 +163,9 @@ } } +class role::message_queue { + class { '::activemq': } +} # == Class: role::eventlogging # This role sets up the EventLogging extension for MediaWiki such that diff --git a/puppet/modules/activemq/lib/puppet/type/tarball.rb b/puppet/modules/activemq/lib/puppet/type/tarball.rb new file mode 100644 index 0000000..a819e02 --- /dev/null +++ b/puppet/modules/activemq/lib/puppet/type/tarball.rb @@ -0,0 +1,74 @@ +require 'net/http' +#require 'open-uri' # ruby 1.9 +require 'uri' + +Puppet::Type.newtype(:tarball) do + @doc = "Fetch and extract tarballed packages" + + ensurable + + newparam(:source) do + desc "URL where the tarball will be found" + end + + newparam(:path) do + desc "Directory in which the tarball shall be extracted" + end + + newparam(:creates) do + desc "Will create this path when untarred" + + isnamevar + end + + newparam(:storage) do + desc "Directory in which to store the original tarball" + end + + def create + if not File.exists? filename + fetch + end + extract + end + + def creates_path + self[:creates] || filename + end + + def destroy + File.unlink creates_path + end + + def exists? + # TODO verify signature + File.exists? creates_path + end + + def extract + notice "Unpacking tarball #{filename} into #{self[:path]}" + system("tar", "-C", self[:path], "-xzf", filename) + end + + def fetch + # TODO safe noclobber + + # ruby 1.9.x :-( + #FileUtils.copy_stream( + # open(self[:source]), + # File.open(filename, "w+") + #) + + uri = URI.parse self[:source] + notice "Retrieving tarball from #{uri}" + Net::HTTP.get_response uri do |input| + File.open(filename, "wb+") do |output| + input.read_body(output) + end + end + end + + def filename + File.join(self[:storage], self[:source].split(/\//).last) + end +end diff --git a/puppet/modules/activemq/manifests/init.pp b/puppet/modules/activemq/manifests/init.pp new file mode 100644 index 0000000..6e33f15 --- /dev/null +++ b/puppet/modules/activemq/manifests/init.pp @@ -0,0 +1,66 @@ +# activemq.pp + +class activemq( + $version = '5.9.0', +) { + $pkgname = "apache-activemq-${version}" + $mirror = "http://mirrors.ibiblio.org/apache/activemq/apache-activemq/${version}/${pkgname}-bin.tar.gz" + + $destdir = "/usr/local" + $pkgdir = "${destdir}/${pkgname}" + + tarball { $pkgname: + ensure => present, + source => $mirror, + storage => '/vagrant/apt-cache', + path => $destdir, + creates => $pkgdir, + } + + $config = '/etc/activemq.xml' + + file { $config: + owner => root, + group => root, + content => template('activemq/activemq.xml.erb'), + } + + file { '/etc/init.d/activemq': + owner => root, + group => root, + mode => 0555, + content => template('activemq/service-activemq.erb'), + } + + package { 'default-jre-headless': + ensure => present, + } + + user { 'activemq': + ensure => present, + managehome => true, + home => '/home/activemq', + } + + file { ["${pkgdir}/data", "${pkgdir}/tmp"]: + ensure => directory, + recurse => true, + owner => activemq, + group => activemq, + mode => 0770, + } + + service { 'activemq': + require => [ + Package['default-jre-headless'], + Tarball[$pkgname], + File[$config], + File['/etc/init.d/activemq'], + File["${pkgdir}/data"], + User['activemq'], + ], + ensure => running, + hasstatus => false, + enable => true, + } +} diff --git a/puppet/modules/activemq/templates/activemq.xml.erb b/puppet/modules/activemq/templates/activemq.xml.erb new file mode 100644 index 0000000..0333dac --- /dev/null +++ b/puppet/modules/activemq/templates/activemq.xml.erb @@ -0,0 +1,63 @@ +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<beans + xmlns="http://www.springframework.org/schema/beans" + xmlns:amq="http://activemq.apache.org/schema/core" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd + http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd"> + + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="locations"> + <value>file:${activemq.base}/conf/credentials.properties</value> + </property> + </bean> + + <!-- Allows us to use system properties as variables in this configuration file --> + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> + + <broker xmlns="http://activemq.apache.org/schema/core" + brokerName="localhost" + dataDirectory="${activemq.base}/data"> + + <!-- + Configure message persistence for the broker. The default persistence + mechanism is the KahaDB store (identified by the kahaDB tag). + For more information, see: + + http://activemq.apache.org/persistence.html + --> + <persistenceAdapter> + <kahaDB directory="${activemq.base}/data/kahadb"/> + </persistenceAdapter> + + <!-- + The transport connectors expose ActiveMQ over a given protocol to + clients and other brokers. For more information, see: + + http://activemq.apache.org/configuring-transports.html + --> + <transportConnectors> + <transportConnector name="stomp" uri="stomp://127.0.0.1:61613"/> + </transportConnectors> + + </broker> + + <import resource="jetty.xml"/> + +</beans> + diff --git a/puppet/modules/activemq/templates/service-activemq.erb b/puppet/modules/activemq/templates/service-activemq.erb new file mode 100755 index 0000000..61f1783 --- /dev/null +++ b/puppet/modules/activemq/templates/service-activemq.erb @@ -0,0 +1,27 @@ +#! /bin/sh + +CMD="/usr/local/<%= @pkgname %>/bin/activemq-admin" + +case "$1" in + start) + echo -n "Starting ActiveMQ " + /bin/su - activemq -c "nohup $CMD $1 >/dev/null 2>&1 &" + echo " . . . done" + ;; + stop) + echo -n "Stopping ActiveMQ" + /bin/su - activemq -c "$CMD $1 >/dev/null 2>&1 " + echo " . . . done" + ;; + restart) + $0 stop + $0 start + ;; + status) + echo not implemented + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 + ;; +esac diff --git a/puppet/modules/crm/manifests/apache.pp b/puppet/modules/crm/manifests/apache.pp new file mode 100644 index 0000000..87e46bb --- /dev/null +++ b/puppet/modules/crm/manifests/apache.pp @@ -0,0 +1,10 @@ +class crm::apache { + include ::crm + include ::apache + + @apache::site { $crm::site_name: + ensure => present, + content => template('crm/crm-apache-site.erb'), + require => Apache::Mod['rewrite'], + } +} diff --git a/puppet/modules/crm/manifests/civicrm.pp b/puppet/modules/crm/manifests/civicrm.pp new file mode 100644 index 0000000..782ca7a --- /dev/null +++ b/puppet/modules/crm/manifests/civicrm.pp @@ -0,0 +1,21 @@ +class crm::civicrm( +) { + @mysql::db { 'civicrm': + dbname => $crm::civicrm_db, + } + + exec { 'civicrm setup': + command => "php /vagrant/puppet/files/civicrm-install.php", + unless => "mysql -u ${mediawiki::db_user} -p${mediawiki::db_pass} ${crm::civicrm_db} -e 'select count(*) from civicrm_domain' > /dev/null", + require => [ + File['/vagrant/puppet/files/civicrm-install.php'], + Mysql::Db['civicrm'], + Package['drush'], + Exec['drupal db install'], + ], + } + + file { '/vagrant/puppet/files/civicrm-install.php': + content => template('crm/civicrm-install.php.erb'), + } +} diff --git a/puppet/modules/crm/manifests/drupal.pp b/puppet/modules/crm/manifests/drupal.pp new file mode 100644 index 0000000..7540110 --- /dev/null +++ b/puppet/modules/crm/manifests/drupal.pp @@ -0,0 +1,69 @@ +define crm::drupal( + $modules, + $settings = {}, +) { + include packages::drush + + $files_dir = '/srv/crm-files' + + file { $files_dir: + ensure => directory, + group => 'www-data', + mode => '2775', + recurse => true, + require => Exec['civicrm setup'], + } + + file { "${crm::dir}/sites/default/files": + ensure => link, + target => $files_dir, + force => true, + } + + # ugh. + exec { 'kill files': + command => "rm -rf '${crm::dir}/sites/default/files'", + } + + @mysql::db { 'drupal': + dbname => $crm::drupal_db, + } + + $drush = "drush -y --root=${crm::dir}/drupal" + + exec { 'drupal db install': + command => "${drush} site-install standard --db-url='mysql://${mediawiki::db_user}:${mediawiki::db_pass}@localhost/${crm::drupal_db}' --site-name='${site_name}'", + unless => "mysql -u '${mediawiki::db_user}' -p'${mediawiki::db_pass}' '${crm::drupal_db}' -e 'select count(*) from system' > /dev/null", + require => [ + Git::Clone['wikimedia/fundraising/crm'], + Mysql::Db['drupal'], + Package['drush'], + Exec['kill files'], + ], + } + + $settings_path = "${crm::dir}/sites/default/settings.php" + $local_settings_path = "${crm::dir}/sites/default/settings.local.php" + + file { $local_settings_path: + content => template('crm/settings-local.php.erb'), + } + + $settings_hook = "require_once 'settings.local.php';" + exec { 'local drupal settings': + command => "chmod u+w ${settings_path} && echo \"${settings_hook}\" >> ${settings_path} ; chmod 0440 ${settings_path}", + unless => "grep -q \"^${settings_hook}$\" ${settings_path}", + require => [ + File[$local_settings_path], + Exec['drupal db install'], + ], + } + + exec { 'enable drupal modules': + command => "${drush} pm-enable ${modules}", + require => [ + Exec['drupal db install'], + Exec['civicrm setup'], + ], + } +} diff --git a/puppet/modules/crm/manifests/init.pp b/puppet/modules/crm/manifests/init.pp new file mode 100644 index 0000000..f487788 --- /dev/null +++ b/puppet/modules/crm/manifests/init.pp @@ -0,0 +1,30 @@ +class crm( + $dir, + $site_name, + $drupal_db = 'drupal', + $civicrm_db = 'civicrm', +) { + include ::mediawiki + include ::php + include ::phpmailer + include ::postfix + include ::twig + include crm::apache + include crm::civicrm + + @git::clone { 'wikimedia/fundraising/crm': + directory => $dir, + } + + # required by module ganglia_reporter + package { 'ganglia-monitor': } + + crm::drupal { $dir: + modules => "civicrm contribution_audit contribution_tracking devel donor_review exchange_rates ganglia_reporter globalcollect_audit large_donation log_audit offline2civicrm oneoffs paypal_audit queue2civicrm recurring recurring_globalcollect syslog thank_you wmf_civicrm wmf_common wmf_communication wmf_contribution_search wmf_eoy_receipt wmf_logging wmf_refund_qc wmf_reports wmf_unsubscribe wmf_unsubscribe_qc devel queue2civicrm_tests simpletest twigext_l10n_tests wmf_communication_tests wmf_test_settings", + settings => { + 'wmf_common_phpmailer_location' => $phpmailer::dir, + 'wmf_common_twig_location' => "${twig::dir}/current", + 'wmf_common_di_location' => "${mediawiki::dir}/extensions/DonationInterface", + } + } +} diff --git a/puppet/modules/crm/templates/civicrm-install.php.erb b/puppet/modules/crm/templates/civicrm-install.php.erb new file mode 100644 index 0000000..37c2006 --- /dev/null +++ b/puppet/modules/crm/templates/civicrm-install.php.erb @@ -0,0 +1,33 @@ +<?php + +$config = array( + 'site_dir' => 'default', + 'base_url' => "http://<%= @site_name %>/", + 'mysql' => array( + 'username' => "<%= scope.lookupvar('mediawiki::db_user') %>", + 'password' => "<%= scope.lookupvar('mediawiki::db_pass') %>", + 'server' => 'localhost', + 'database' => "<%= scope.lookupvar('crm::civicrm_db') %>", + ), + 'drupal' => array( + 'username' => "<%= scope.lookupvar('mediawiki::db_user') %>", + 'password' => "<%= scope.lookupvar('mediawiki::db_pass') %>", + 'server' => 'localhost', + 'database' => "<%= scope.lookupvar('crm::drupal_db') %>", + ), +); + +global $cmsPath, $crmPath, $installType; +$cmsPath = '<%= @dir %>/drupal'; +$crmPath = '<%= @dir %>/civicrm'; +$installType = 'drupal'; + +define( 'VERSION', '7.0' ); +define( 'DB_USER', $config['drupal']['username'] ); +define( 'DB_PASSWORD', $config['drupal']['password'] ); +define( 'DB_HOST', $config['drupal']['server'] ); +define( 'DB_NAME', $config['drupal']['database'] ); + +require_once '<%= @dir %>/civicrm/install/civicrm.php'; + +civicrm_main( $config ); diff --git a/puppet/modules/crm/templates/crm-apache-site.erb b/puppet/modules/crm/templates/crm-apache-site.erb new file mode 100644 index 0000000..87dfbb7 --- /dev/null +++ b/puppet/modules/crm/templates/crm-apache-site.erb @@ -0,0 +1,6 @@ +DocumentRoot "<%= scope.lookupvar('crm::dir') %>/drupal" + +ServerName <%= scope.lookupvar('crm::site_name') %> + +<Directory <%= scope.lookupvar('crm::dir') %>> +</Directory> diff --git a/puppet/modules/crm/templates/settings-local.php.erb b/puppet/modules/crm/templates/settings-local.php.erb new file mode 100644 index 0000000..bc1e688 --- /dev/null +++ b/puppet/modules/crm/templates/settings-local.php.erb @@ -0,0 +1,11 @@ +<?php +# This file is managed by Puppet. + +define( 'WMF_UNSUB_SALT', 'vagrant' ); + +$databases['donations']['default'] = $databases['default']['default']; + +# default settings for drupal variable_get +<% @settings.each do |k, v| %> + $conf['<%= k %>'] = '<%= v %>'; +<% end %> diff --git a/puppet/modules/phpmailer/manifests/init.pp b/puppet/modules/phpmailer/manifests/init.pp new file mode 100644 index 0000000..efd8ac7 --- /dev/null +++ b/puppet/modules/phpmailer/manifests/init.pp @@ -0,0 +1,7 @@ +class phpmailer( + $dir = "/vagrant/phpmailer", +) { + @git::clone { 'wikimedia/fundraising/phpmailer': + directory => $dir, + } +} diff --git a/puppet/modules/postfix/manifests/init.pp b/puppet/modules/postfix/manifests/init.pp new file mode 100644 index 0000000..781dcbd --- /dev/null +++ b/puppet/modules/postfix/manifests/init.pp @@ -0,0 +1,35 @@ +class postfix { + package { 'postfix': + ensure => latest + } + + file { '/etc/postfix/main.cf': + owner => root, + group => root, + mode => 0644, + content => template('postfix/main.cf.erb'); + } + + #TODO: postmap + file { '/etc/postfix/virtual': + owner => root, + group => root, + mode => 0644, + content => template('postfix/virtual.erb'); + } + + exec { 'postmap virtual': + command => "postmap /etc/postfix/virtual", + subscribe => File['/etc/postfix/virtual'], + } + + service { 'postfix': + require => Package['postfix'], + subscribe => [ + File['/etc/postfix/main.cf'], + Exec['postmap virtual'], + ], + ensure => running, + enable => true; + } +} diff --git a/puppet/modules/postfix/templates/main.cf.erb b/puppet/modules/postfix/templates/main.cf.erb new file mode 100644 index 0000000..9ebd232 --- /dev/null +++ b/puppet/modules/postfix/templates/main.cf.erb @@ -0,0 +1 @@ +virtual_alias_maps = regexp:/etc/postfix/virtual diff --git a/puppet/modules/postfix/templates/virtual.erb b/puppet/modules/postfix/templates/virtual.erb new file mode 100644 index 0000000..bf6eef0 --- /dev/null +++ b/puppet/modules/postfix/templates/virtual.erb @@ -0,0 +1 @@ +/.+/ vagrant diff --git a/puppet/modules/twig/manifests/init.pp b/puppet/modules/twig/manifests/init.pp new file mode 100644 index 0000000..94b8536 --- /dev/null +++ b/puppet/modules/twig/manifests/init.pp @@ -0,0 +1,7 @@ +class twig( + $dir = "/vagrant/twig", +) { + @git::clone { 'wikimedia/fundraising/twig': + directory => $dir, + } +} diff --git a/puppet/templates/fr-config.php.erb b/puppet/templates/fr-config.php.erb index bfbfbcc..c708339 100644 --- a/puppet/templates/fr-config.php.erb +++ b/puppet/templates/fr-config.php.erb @@ -1,11 +1,17 @@ $wgDonationInterfaceTestMode = true; +$wgDonationInterfaceEnableAdyen = true; +$wgDonationInterfaceEnableAmazon = true; $wgDonationInterfaceEnableGlobalCollect = true; $wgDonationInterfaceEnablePaypal = true; +# TODO: the following cruft is brought to u by a forward reference snafu. +# Better if DonationInterfaceFormSettings would use relative paths? $DI = "$IP/extensions/DonationInterface"; -$wgGlobalCollectGatewayHtmlFormDir = "$DI/globalcollect_gateway/forms"; -$wgPaypalGatewayHtmlFormDir = "$DI/paypal_gateway/forms"; -$wgPayflowProGatewayHtmlFormDir = "$DI/payflowpro_gateway/forms"; +$wgAdyenGatewayHtmlFormDir = "$DI/adyen_gateway/forms/html"; +$wgAmazonGatewayHtmlFormDir = "$DI/amazon_gateway/forms/html"; +$wgGlobalCollectGatewayHtmlFormDir = "$DI/globalcollect_gateway/forms/html"; +$wgPaypalGatewayHtmlFormDir = "$DI/paypal_gateway/forms/html"; +$wgPayflowProGatewayHtmlFormDir = "$DI/payflowpro_gateway/forms/html"; $wgGlobalCollectGatewayAccountInfo['test'] = array( 'MerchantID' => 'test' -- To view, visit https://gerrit.wikimedia.org/r/108861 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: If1f9f9ee6be4c9d7051cd8cb628fceceb98d96da Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/vagrant Gerrit-Branch: master Gerrit-Owner: Adamw <[email protected]> Gerrit-Reviewer: Ori.livneh <[email protected]> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
