Skip to content

Commit 2aca9d6

Browse files
committed
refactor: remove RHEL 7 TODOs and fix mod_ssl spec
RHEL 7 is EOL. Simplify helpers by removing version guards. Replace commented-out mod_ssl spec with a working test.
1 parent fc0cac8 commit 2aca9d6

4 files changed

Lines changed: 53 additions & 98 deletions

File tree

libraries/helpers.rb

Lines changed: 38 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -119,10 +119,6 @@ def perl_pkg
119119

120120
def default_apache_pkg
121121
case node['platform_family']
122-
when 'amazon'
123-
'httpd'
124-
when 'rhel'
125-
'httpd'
126122
when 'debian', 'suse'
127123
'apache2'
128124
when 'arch'
@@ -336,41 +332,37 @@ def default_session_cache
336332
end
337333

338334
def config_file?(mod_name)
339-
if %w(ldap
340-
actions
341-
alias
342-
auth_cas
343-
autoindex
344-
cache_disk
345-
cgid
346-
dav_fs
347-
deflate
348-
dir
349-
fastcgi
350-
fcgid
351-
include
352-
info
353-
ldap
354-
mime_magic
355-
mime
356-
negotiation
357-
pagespeed
358-
proxy_balancer
359-
proxy_ftp
360-
proxy
361-
reqtimeout
362-
setenvif
363-
ssl
364-
status
365-
userdir
366-
mpm_event
367-
mpm_prefork
368-
mpm_worker
335+
%w(ldap
336+
actions
337+
alias
338+
auth_cas
339+
autoindex
340+
cache_disk
341+
cgid
342+
dav_fs
343+
deflate
344+
dir
345+
fastcgi
346+
fcgid
347+
include
348+
info
349+
ldap
350+
mime_magic
351+
mime
352+
negotiation
353+
pagespeed
354+
proxy_balancer
355+
proxy_ftp
356+
proxy
357+
reqtimeout
358+
setenvif
359+
ssl
360+
status
361+
userdir
362+
mpm_event
363+
mpm_prefork
364+
mpm_worker
369365
).include?(mod_name)
370-
true
371-
else
372-
false
373-
end
374366
end
375367

376368
def pagespeed_url
@@ -419,8 +411,7 @@ def apache_mod_php_modulename
419411
when 'amazon'
420412
'php8_module'
421413
when 'rhel'
422-
# TODO: Remove when we no longer support RHEL 7
423-
node['platform_version'].to_i >= 8 ? 'php7_module' : 'php5_module'
414+
'php7_module'
424415
when 'debian'
425416
if platform?('debian') && node['platform_version'].to_i >= 12
426417
'php_module'
@@ -437,28 +428,21 @@ def apache_mod_php_modulename
437428
def apache_mod_php_filename
438429
case node['platform_family']
439430
when 'debian'
440-
if platform?('debian') && node['platform_version'].to_i == 10
441-
'libphp7.3.so'
442-
elsif platform?('debian') && node['platform_version'].to_i == 11
431+
if platform?('debian') && node['platform_version'].to_i == 11
443432
'libphp7.4.so'
444433
elsif platform?('debian') && node['platform_version'].to_i == 12
445434
'libphp8.2.so'
446435
elsif platform?('debian') && node['platform_version'].to_i >= 13
447436
'libphp8.4.so'
448-
elsif platform?('ubuntu') && node['platform_version'].to_f == 18.04
449-
'libphp7.2.so'
450-
elsif platform?('ubuntu') && node['platform_version'].to_f == 20.04
451-
'libphp7.4.so'
452-
elsif platform?('ubuntu') && node['platform_version'].to_f >= 22.04 && node['platform_version'].to_f < 24.04
453-
'libphp8.1.so'
454437
elsif platform?('ubuntu') && node['platform_version'].to_f >= 24.04
455438
'libphp8.3.so'
439+
elsif platform?('ubuntu') && node['platform_version'].to_f >= 22.04
440+
'libphp8.1.so'
456441
else
457442
'libphp7.0.so'
458443
end
459444
when 'rhel'
460-
# TODO: Remove when we no longer support RHEL 7
461-
node['platform_version'].to_i >= 8 ? 'libphp7.so' : 'libphp5.so'
445+
'libphp7.so'
462446
when 'suse'
463447
if platform?('opensuse') && node['platform_version'].to_f >= 15.5
464448
'mod_php8.so'
@@ -474,24 +458,22 @@ def apache_mod_wsgi_package
474458
when 'debian'
475459
'libapache2-mod-wsgi-py3'
476460
when 'rhel', 'fedora', 'amazon'
477-
# TODO: Remove when we no longer support RHEL 7
478-
node['platform_version'].to_i >= 8 ? 'python3-mod_wsgi' : 'mod_wsgi'
461+
'python3-mod_wsgi'
479462
when 'suse'
480463
'apache2-mod_wsgi-python3'
481464
end
482465
end
483466

484467
def apache_mod_wsgi_filename
485-
if platform_family?('rhel', 'fedora', 'amazon') && node['platform_version'].to_i >= 8
468+
if platform_family?('rhel', 'fedora', 'amazon')
486469
'mod_wsgi_python3.so'
487470
else
488471
'mod_wsgi.so'
489472
end
490473
end
491474

492475
def apache_mod_auth_cas_install_method
493-
# TODO: Simplify when we no longer support RHEL 7
494-
if (platform_family?('rhel') && node['platform_version'].to_i >= 8) || platform_family?('suse', 'fedora', 'amazon')
476+
if platform_family?('rhel', 'suse', 'fedora', 'amazon')
495477
'source'
496478
else
497479
'package'

spec/libraries/mod_auth_cas_spec.rb

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,6 @@ class DummyClass < Chef::Node
2626
it { expect(subject.apache_mod_auth_cas_install_method).to eq 'source' }
2727
end
2828

29-
context 'redhat 7' do
30-
let(:platform_family) { 'rhel' }
31-
let(:platform_version) { '7' }
32-
it { expect(subject.apache_mod_auth_cas_install_method).to eq 'package' }
33-
end
34-
3529
context 'debian' do
3630
let(:platform_family) { 'debian' }
3731
let(:platform_version) { '11' }

spec/libraries/mod_wsgi_spec.rb

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,6 @@ class DummyClass < Chef::Node
2020
it { expect(subject.apache_mod_wsgi_package).to eq 'python3-mod_wsgi' }
2121
end
2222

23-
context 'redhat 7' do
24-
let(:platform_family) { 'rhel' }
25-
let(:platform_version) { '7' }
26-
it { expect(subject.apache_mod_wsgi_package).to eq 'mod_wsgi' }
27-
end
28-
2923
context 'debian' do
3024
let(:platform_family) { 'debian' }
3125
let(:platform_version) { '11' }
@@ -64,21 +58,15 @@ class DummyClass < Chef::Node
6458
it { expect(subject.apache_mod_wsgi_filename).to eq 'mod_wsgi_python3.so' }
6559
end
6660

67-
context 'redhat 7' do
68-
let(:platform_family) { 'rhel' }
69-
let(:platform_version) { '7.7.1908' }
70-
it { expect(subject.apache_mod_wsgi_filename).to eq 'mod_wsgi.so' }
71-
end
72-
7361
context 'debian' do
7462
let(:platform_family) { 'debian' }
75-
let(:platform_version) { '10' }
63+
let(:platform_version) { '12' }
7664
it { expect(subject.apache_mod_wsgi_filename).to eq 'mod_wsgi.so' }
7765
end
7866

7967
context 'ubuntu' do
8068
let(:platform_family) { 'debian' }
81-
let(:platform_version) { '20.04' }
69+
let(:platform_version) { '24.04' }
8270
it { expect(subject.apache_mod_wsgi_filename).to eq 'mod_wsgi.so' }
8371
end
8472

spec/resources/mod_ssl_spec.rb

Lines changed: 13 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,20 @@
11
# frozen_string_literal: true
22

3-
# TODO: Fix
4-
# resource apt_package[mod_ssl] is configured to notify resource execute[generate-module-list] with action run
5-
# Commenting out due to some notification bug.
6-
73
require 'spec_helper'
84

9-
# describe 'apache2_mod_ssl' do
10-
# step_into :apache2_install, :apache2_mod_ssl
11-
# platform 'ubuntu'
12-
13-
# context 'mod_ssl' do
14-
# recipe do
15-
# apache2_install 'package'
16-
# apache2_mod_ssl 'default'
17-
# end
5+
describe 'apache2_mod_ssl' do
6+
step_into :apache2_mod_ssl
7+
platform 'ubuntu'
188

19-
# it 'outputs template correctly' do
20-
# stub_command('/usr/sbin/apache2ctl -t').and_return('OK')
9+
context 'mod_ssl default' do
10+
recipe do
11+
apache2_mod_ssl 'default'
12+
end
2113

22-
# is_expected.not_to render_file('/etc/apache2/mods-available/ssl.conf')
23-
# .with_content(/SSLStrictSNIVHostCheck Off/)
14+
before do
15+
stub_command('/usr/sbin/apache2ctl -t').and_return('OK')
16+
end
2417

25-
# is_expected.to render_file('/etc/apache2/mods-available/ssl.conf')
26-
# .with_content(/SSLProtocol TLSv1.2/)
27-
# end
28-
# end
29-
# end
18+
it { is_expected.to create_template('/etc/apache2/mods-available/ssl.conf') }
19+
end
20+
end

0 commit comments

Comments
 (0)