aboutsummaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'manifests')
-rw-r--r--manifests/init.pp12
-rw-r--r--manifests/packages/dpa.pp67
-rw-r--r--manifests/packages/ppa.pp (renamed from manifests/packages/xenial.pp)2
3 files changed, 76 insertions, 5 deletions
diff --git a/manifests/init.pp b/manifests/init.pp
index c654076..52ac0d4 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -18,8 +18,11 @@
class php($hardened = true) {
case $::lsbdistcodename {
- 'xenial': {
- include php::packages::xenial
+ 'xenial','stretch': {
+ include php::packages::ppa
+ }
+ 'stretch': {
+ include php::packages::dpa
}
default: {
include php::packages::default
@@ -27,8 +30,9 @@ class php($hardened = true) {
}
$folder = $::lsbdistcodename ? {
- 'xenial' => '/etc/php/5.6',
- default => '/etc/php5',
+ 'xenial' => '/etc/php/5.6',
+ 'stretch' => '/etc/php/5.6',
+ default => '/etc/php5',
}
file { [ "${folder}", "${folder}/cli", "${folder}/apache2", "${folder}/cli/conf.d", "${folder}/apache2/conf.d" ]:
diff --git a/manifests/packages/dpa.pp b/manifests/packages/dpa.pp
new file mode 100644
index 0000000..1af6ab9
--- /dev/null
+++ b/manifests/packages/dpa.pp
@@ -0,0 +1,67 @@
+class php::packages::dpa {
+ file { '/etc/apt/trusted.gpg.d/deb.sury.org-php.gpg':
+ ensure => present,
+ owner => "root",
+ group => "root",
+ mode => "0644",
+ source => 'pupet:///modules/php/files/deb.sury.org.gpg',
+ }
+
+ file { '/etc/apt/sources.list.d/php.list' :
+ ensure => present,
+ owner => "root",
+ group => "root",
+ mode => "0644",
+ content => "deb https://packages.sury.org/php/ ${::lsbdistcodename} main\n",
+ require => File['/etc/apt/trusted.gpg.d/php.gpg'],
+ notify => Exec['php-apt-auto-update'],
+ }
+
+ exec { 'php-apt-auto-update':
+ command => "/usr/bin/apt-get update",
+ user => "root",
+ refreshonly => true,
+ }
+
+ # The needed packages: we could also try libapache2-mod-php5.6filter
+ package { 'php5':
+ name => 'php5.6',
+ require => File['/etc/apt/sources.list.d/php.list',
+ }
+
+ package { 'php5-cli':
+ name => 'php5.6-cli',
+ require => File['/etc/apt/sources.list.d/php.list',
+ }
+
+ package { [ 'php5.6-mysql', 'php5.6-sqlite3', 'php5.6-curl', 'php5.6-gmp', 'libapache2-mod-php5.6' ]:
+ ensure => installed,
+ require => File['/etc/apt/sources.list.d/php.list',
+ }
+
+ # Optional packages
+ package { [ "php5.6-gd", "php-imagick" ]:
+ ensure => installed,
+ require => File['/etc/apt/sources.list.d/php.list',
+ }
+
+ # Not available anymore
+ package { 'php5.6-suhosin':
+ ensure => absent,
+ require => File['/etc/apt/sources.list.d/php.list',
+ }
+
+ # The needed apache modules
+ apache::module { 'php5.6':
+ ensure => present,
+ require => Package['libapache2-mod-php5.6'],
+ }
+
+ # Default alternative
+ file { "/etc/alternatives/php":
+ ensure => "/usr/bin/php5.6",
+ owner => root,
+ group => root,
+ require => Package['php5'],
+ }
+}
diff --git a/manifests/packages/xenial.pp b/manifests/packages/ppa.pp
index ef5cb63..4dc4f7a 100644
--- a/manifests/packages/xenial.pp
+++ b/manifests/packages/ppa.pp
@@ -1,4 +1,4 @@
-class php::packages::xenial {
+class php::packages::ppa {
#package { 'python-software-properties':
# ensure => present,
#}