From 70463c98b076639413199b7ae2cfe9328c2ba005 Mon Sep 17 00:00:00 2001
From: Alex Mace
Date: Thu, 27 Nov 2014 12:33:25 +0000
Subject: [PATCH 1/6] Added the mailparse extension
---
manifests/extension/mailparse.pp | 51 ++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 manifests/extension/mailparse.pp
diff --git a/manifests/extension/mailparse.pp b/manifests/extension/mailparse.pp
new file mode 100644
index 0000000..2c92c01
--- /dev/null
+++ b/manifests/extension/mailparse.pp
@@ -0,0 +1,51 @@
+# Installs a php extension for a specific version of php.
+#
+# Usage:
+#
+# php::extension::mailparse { 'mailparse for 5.4.10':
+# php => '5.4.10',
+# version => '1.0.6'
+# }
+#
+define php::extension::mailparse(
+ $php,
+ $version = '1.0.6'
+) {
+ include boxen::config
+
+ require php::config
+ # Require php version eg. php::5_4_10
+ # This will compile, install and set up config dirs if not present
+ require join(['php', join(split($php, '[.]'), '_')], '::')
+
+
+ $extension = 'mailparse'
+ $package_name = "mailparse-${version}"
+ $url = "http://pecl.php.net/get/mailparse-${version}.tgz"
+
+ # Final module install path
+ $module_path = "${php::config::root}/versions/${php}/modules/${extension}.so"
+
+ # Additional options
+ $configure_params = ""
+
+ php_extension { $name:
+ extension => $extension,
+ version => $version,
+ package_name => $package_name,
+ package_url => $url,
+ homebrew_path => $boxen::config::homebrewdir,
+ phpenv_root => $php::config::root,
+ php_version => $php,
+ cache_dir => $php::config::extensioncachedir,
+ configure_params => $configure_params,
+ }
+
+ # Add config file once extension is installed
+
+ file { "${php::config::configdir}/${php}/conf.d/${extension}.ini":
+ content => template('php/extensions/generic.ini.erb'),
+ require => Php_extension[$name],
+ }
+
+}
From e4f8d64e31da55b42ae9b90379b5115d878c2ffb Mon Sep 17 00:00:00 2001
From: Alex Mace
Date: Thu, 27 Nov 2014 12:39:21 +0000
Subject: [PATCH 2/6] Corrected the version number of mailparse
---
manifests/extension/mailparse.pp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/manifests/extension/mailparse.pp b/manifests/extension/mailparse.pp
index 2c92c01..94b6ef2 100644
--- a/manifests/extension/mailparse.pp
+++ b/manifests/extension/mailparse.pp
@@ -9,7 +9,7 @@
#
define php::extension::mailparse(
$php,
- $version = '1.0.6'
+ $version = '2.1.6'
) {
include boxen::config
From 158ff6c20c9b604eb3eb21bed48bfac5e7cac460 Mon Sep 17 00:00:00 2001
From: Alex Mace
Date: Mon, 27 Apr 2015 23:02:27 +0100
Subject: [PATCH 3/6] Updates based on what other extensions are doing, and
fixing a lart error
---
manifests/extension/mailparse.pp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/manifests/extension/mailparse.pp b/manifests/extension/mailparse.pp
index 94b6ef2..c83ee66 100644
--- a/manifests/extension/mailparse.pp
+++ b/manifests/extension/mailparse.pp
@@ -16,7 +16,7 @@
require php::config
# Require php version eg. php::5_4_10
# This will compile, install and set up config dirs if not present
- require join(['php', join(split($php, '[.]'), '_')], '::')
+ php_require($php)
$extension = 'mailparse'
@@ -27,7 +27,7 @@
$module_path = "${php::config::root}/versions/${php}/modules/${extension}.so"
# Additional options
- $configure_params = ""
+ $configure_params = ''
php_extension { $name:
extension => $extension,
From e678619ebf88bd8ad1821d443c7a721a56344417 Mon Sep 17 00:00:00 2001
From: Alex Mace
Date: Mon, 27 Apr 2015 23:04:45 +0100
Subject: [PATCH 4/6] A spec file added for the mailparse extension
---
.../php_extension_mailparse_spec.rb | 35 +++++++++++++++++++
1 file changed, 35 insertions(+)
create mode 100644 spec/defines/extensions/php_extension_mailparse_spec.rb
diff --git a/spec/defines/extensions/php_extension_mailparse_spec.rb b/spec/defines/extensions/php_extension_mailparse_spec.rb
new file mode 100644
index 0000000..cb492a3
--- /dev/null
+++ b/spec/defines/extensions/php_extension_mailparse_spec.rb
@@ -0,0 +1,35 @@
+require 'spec_helper'
+
+describe "php::extension::mailparse" do
+ let(:facts) { default_test_facts }
+ let(:title) { "mailparse for 5.4.17" }
+ let(:params) do
+ {
+ :php => "5.4.17",
+ :version => "2.1.6"
+ }
+ end
+
+ it do
+ should contain_class("boxen::config")
+ should contain_class("php::config")
+ should contain_php__version("5.4.17")
+#
+# should contain_php_extension("mailparse for 5.4.17").with({
+# :extension => "mailparse",
+# :version => "2.1.6",
+# :package_name => "mailparse-2.1.6",
+# :package_url => "http://pecl.php.net/get/mailparse-2.1.6.tgz",
+# :homebrew_path => "/test/boxen/homebrew",
+# :phpenv_root => "/test/boxen/phpenv",
+# :php_version => "5.4.17",
+# :cache_dir => "/test/boxen/data/php/cache/extensions",
+# :provider => "pecl",
+# })
+#
+# should contain_file("/test/boxen/config/php/5.4.17/conf.d/mailparse.ini").with({
+# :content => File.read("spec/fixtures/mailparse.ini"),
+# :require => "Php_extension[mailparse for 5.4.17]"
+# })
+ end
+end
From 01f4930aa27181224ea738d56592f43a6a93a962 Mon Sep 17 00:00:00 2001
From: Alex Mace
Date: Mon, 27 Apr 2015 23:48:06 +0100
Subject: [PATCH 5/6] Forgot to uncomment this part of the mailparse spec
---
.../php_extension_mailparse_spec.rb | 34 +++++++++----------
spec/fixtures/mailparse.ini | 1 +
2 files changed, 18 insertions(+), 17 deletions(-)
create mode 100644 spec/fixtures/mailparse.ini
diff --git a/spec/defines/extensions/php_extension_mailparse_spec.rb b/spec/defines/extensions/php_extension_mailparse_spec.rb
index cb492a3..6d11522 100644
--- a/spec/defines/extensions/php_extension_mailparse_spec.rb
+++ b/spec/defines/extensions/php_extension_mailparse_spec.rb
@@ -14,22 +14,22 @@
should contain_class("boxen::config")
should contain_class("php::config")
should contain_php__version("5.4.17")
-#
-# should contain_php_extension("mailparse for 5.4.17").with({
-# :extension => "mailparse",
-# :version => "2.1.6",
-# :package_name => "mailparse-2.1.6",
-# :package_url => "http://pecl.php.net/get/mailparse-2.1.6.tgz",
-# :homebrew_path => "/test/boxen/homebrew",
-# :phpenv_root => "/test/boxen/phpenv",
-# :php_version => "5.4.17",
-# :cache_dir => "/test/boxen/data/php/cache/extensions",
-# :provider => "pecl",
-# })
-#
-# should contain_file("/test/boxen/config/php/5.4.17/conf.d/mailparse.ini").with({
-# :content => File.read("spec/fixtures/mailparse.ini"),
-# :require => "Php_extension[mailparse for 5.4.17]"
-# })
+
+ should contain_php_extension("mailparse for 5.4.17").with({
+ :extension => "mailparse",
+ :version => "2.1.6",
+ :package_name => "mailparse-2.1.6",
+ :package_url => "http://pecl.php.net/get/mailparse-2.1.6.tgz",
+ :homebrew_path => "/test/boxen/homebrew",
+ :phpenv_root => "/test/boxen/phpenv",
+ :php_version => "5.4.17",
+ :cache_dir => "/test/boxen/data/php/cache/extensions",
+ :configure_params => '',
+ })
+
+ should contain_file("/test/boxen/config/php/5.4.17/conf.d/mailparse.ini").with({
+ :content => File.read("spec/fixtures/mailparse.ini"),
+ :require => "Php_extension[mailparse for 5.4.17]"
+ })
end
end
diff --git a/spec/fixtures/mailparse.ini b/spec/fixtures/mailparse.ini
new file mode 100644
index 0000000..98b983e
--- /dev/null
+++ b/spec/fixtures/mailparse.ini
@@ -0,0 +1 @@
+extension=/test/boxen/phpenv/versions/5.4.17/modules/mailparse.so
From a995e4602f79df27183cd98752840d91d1ea5f26 Mon Sep 17 00:00:00 2001
From: Alex Mace
Date: Wed, 13 May 2015 21:23:04 +0100
Subject: [PATCH 6/6] Updated the comment to remove the reference to v1 syntax
---
manifests/extension/mailparse.pp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/manifests/extension/mailparse.pp b/manifests/extension/mailparse.pp
index c83ee66..5435cdb 100644
--- a/manifests/extension/mailparse.pp
+++ b/manifests/extension/mailparse.pp
@@ -14,8 +14,8 @@
include boxen::config
require php::config
- # Require php version eg. php::5_4_10
- # This will compile, install and set up config dirs if not present
+
+ # Ensure that the specified version of PHP is installed.
php_require($php)