]> gitweb.fluxo.info Git - puppet-php.git/commitdiff
Uses apt::packages::dpa and apt::packages::ppa
authorSilvio Rhatto <rhatto@riseup.net>
Tue, 11 Jul 2017 14:48:28 +0000 (11:48 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Tue, 11 Jul 2017 14:48:28 +0000 (11:48 -0300)
files/deb.sury.org.gpg [new file with mode: 0644]
manifests/init.pp
manifests/packages/dpa.pp [new file with mode: 0644]
manifests/packages/ppa.pp [moved from manifests/packages/xenial.pp with 97% similarity]

diff --git a/files/deb.sury.org.gpg b/files/deb.sury.org.gpg
new file mode 100644 (file)
index 0000000..dc4d282
Binary files /dev/null and b/files/deb.sury.org.gpg differ
index c654076630140d888c6621f7d3a7b8b60344cdcf..52ac0d460e282660e4b43ff390613ca416c0154e 100644 (file)
 
 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 (file)
index 0000000..1af6ab9
--- /dev/null
@@ -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'],
+  }
+}
similarity index 97%
rename from manifests/packages/xenial.pp
rename to manifests/packages/ppa.pp
index ef5cb637eabffdb69a0e4fa27cd1bfd90e48d3f1..4dc4f7ae7d1bff779bce9d0de2c195448ff4be49 100644 (file)
@@ -1,4 +1,4 @@
-class php::packages::xenial {
+class php::packages::ppa {
   #package { 'python-software-properties':
   #  ensure => present,
   #}