diff --git a/manifests/params.pp b/manifests/params.pp index ca1b8c57ae..cdd6e07ed7 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -392,7 +392,7 @@ 'wsgi' => 'libapache2-mod-wsgi', 'xsendfile' => 'libapache2-mod-xsendfile', } - } else { + } elsif ($::operatingsystem == 'Ubuntu') or ($::operatingsystem == 'Debian' and versioncmp($::operatingsystemrelease, '11') < 0) { $php_version = $facts['operatingsystemmajrelease'] ? { '9' => '7.0', # Debian Stretch '16.04' => '7.0', # Ubuntu Xenial @@ -427,6 +427,37 @@ 'wsgi' => 'libapache2-mod-wsgi', 'xsendfile' => 'libapache2-mod-xsendfile', } + } else { + $php_version = $facts['operatingsystemmajrelease'] ? { + default => '7.4', # Debian Bullseye + } + $mod_packages = { + 'apreq2' => 'libapache2-mod-apreq2', + 'auth_cas' => 'libapache2-mod-auth-cas', + 'auth_kerb' => 'libapache2-mod-auth-kerb', + 'auth_openidc' => 'libapache2-mod-auth-openidc', + 'auth_gssapi' => 'libapache2-mod-auth-gssapi', + 'auth_mellon' => 'libapache2-mod-auth-mellon', + 'authnz_pam' => 'libapache2-mod-authnz-pam', + 'dav_svn' => 'libapache2-mod-svn', + 'fastcgi' => 'libapache2-mod-fastcgi', + 'fcgid' => 'libapache2-mod-fcgid', + 'geoip' => 'libapache2-mod-geoip', + 'intercept_form_submit' => 'libapache2-mod-intercept-form-submit', + 'jk' => 'libapache2-mod-jk', + 'lookup_identity' => 'libapache2-mod-lookup-identity', + 'nss' => 'libapache2-mod-nss', + 'pagespeed' => 'mod-pagespeed-stable', + 'passenger' => 'libapache2-mod-passenger', + 'perl' => 'libapache2-mod-perl2', + 'phpXXX' => 'libapache2-mod-phpXXX', + 'python' => 'libapache2-mod-python', + 'rpaf' => 'libapache2-mod-rpaf', + 'security' => 'libapache2-mod-security2', + 'shib2' => 'libapache2-mod-shib', + 'wsgi' => 'libapache2-mod-wsgi-py3', + 'xsendfile' => 'libapache2-mod-xsendfile', + } } $error_log = 'error.log' $scriptalias = '/usr/lib/cgi-bin' diff --git a/metadata.json b/metadata.json index fea7e21868..413e228e4e 100644 --- a/metadata.json +++ b/metadata.json @@ -53,7 +53,8 @@ "operatingsystemrelease": [ "8", "9", - "10" + "10", + "11" ] }, { diff --git a/spec/acceptance/mod_php_spec.rb b/spec/acceptance/mod_php_spec.rb index 2917445416..7bc3749c13 100644 --- a/spec/acceptance/mod_php_spec.rb +++ b/spec/acceptance/mod_php_spec.rb @@ -33,6 +33,10 @@ class { 'apache::mod::php': } describe file("#{apache_hash['mod_dir']}/php7.3.conf") do it { is_expected.to contain 'DirectoryIndex index.php' } end + elsif os[:family] == 'debian' && os[:release] =~ %r{^11\.} + describe file("#{apache_hash['mod_dir']}/php7.4.conf") do + it { is_expected.to contain 'DirectoryIndex index.php' } + end elsif os[:family] == 'ubuntu' && os[:release] == '18.04' describe file("#{apache_hash['mod_dir']}/php7.2.conf") do it { is_expected.to contain 'DirectoryIndex index.php' } diff --git a/spec/spec_helper_acceptance_local.rb b/spec/spec_helper_acceptance_local.rb index 6f64652915..2f4405c1f7 100644 --- a/spec/spec_helper_acceptance_local.rb +++ b/spec/spec_helper_acceptance_local.rb @@ -72,6 +72,9 @@ class { 'epel': } } PUPPETCODE LitmusHelper.instance.apply_manifest(pp) + + # Ensure ipv6 is enabled on our Debian 11 Docker boxes + LitmusHelper.instance.run_shell('sysctl -w net.ipv6.conf.all.disable_ipv6=0') if %r{debian}.match?(os[:family]) && os[:release].to_f == 11 end c.after :suite do