From 5ebde1e6b1c96de776ebc744312246e625803350 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Wed, 6 Sep 2023 22:15:35 +0900 Subject: [PATCH] Remove CentOS/RHEL 7 support The train release was the last release with CentOS 7 support, but it is now being transitioned to EOL. This change removes support for CentOS 7 and RHEL 7 because we no longer support any OpenStack release supporting these old operating systems. Because fastcgi package was available for only CentOS/RHEL 7, its support is also removed by this change. This also removes the wrong warning message for rgw deployment with mod_proxy_fcgi. This pattern is still valid in supported operating systems and only the one with mod_fastcgi should be deprecated or removed. Change-Id: I1238b23f1aee57641788a21556123bec94a1ed1b --- .zuul.yaml | 12 -- manifests/params.pp | 11 +- manifests/profile/params.pp | 2 +- manifests/repo.pp | 41 ----- manifests/rgw.pp | 17 +- manifests/rgw/apache_proxy_fcgi.pp | 3 - metadata.json | 2 - .../remove-centos7-89d168e784485509.yaml | 15 ++ spec/classes/ceph_repo_spec.rb | 167 ------------------ 9 files changed, 19 insertions(+), 251 deletions(-) create mode 100644 releasenotes/notes/remove-centos7-89d168e784485509.yaml diff --git a/.zuul.yaml b/.zuul.yaml index f839d4c5..fb4ada6a 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -7,23 +7,11 @@ - release-notes-jobs-python3 check: jobs: - - puppet-ceph-unit-5.5-centos-8-stream-train - puppet-ceph-unit-6.21-ubuntu-focal-yoga gate: jobs: - - puppet-ceph-unit-5.5-centos-8-stream-train - puppet-ceph-unit-6.21-ubuntu-focal-yoga -# NOTE(tkajinam): stable/train supports CentOS 7, Ubuntu 18.04 and Puppet 5 -- job: - name: puppet-ceph-unit-5.5-centos-8-stream-train - parent: puppet-openstack-unit-base - nodeset: centos-8-stream - override-checkout: stable/train - vars: - puppet_gem_version: 5.5.0 - rspec_puppet_version: '~> 2.3.0' - # NOTE(tkajinam): stable/yoga supports CentOS 8, Ubuntu 20.04 and Puppet 6 - job: name: puppet-ceph-unit-6.21-ubuntu-focal-yoga diff --git a/manifests/params.pp b/manifests/params.pp index 94bc6721..87e46191 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -53,22 +53,13 @@ class ceph::params ( 'Debian': { $pkg_radosgw = 'radosgw' $user_radosgw = 'www-data' - $pkg_fastcgi = 'libapache2-mod-fastcgi' $pkg_policycoreutils = 'policycoreutils' - $fastcgi_available = false } 'RedHat': { $pkg_radosgw = 'ceph-radosgw' $user_radosgw = 'apache' - $pkg_fastcgi = 'mod_fastcgi' - if (Integer.new($facts['os']['release']['major']) > 7) { - $pkg_policycoreutils = 'policycoreutils-python-utils' - $fastcgi_available = false - } else { - $pkg_policycoreutils = 'policycoreutils-python' - $fastcgi_available = false - } + $pkg_policycoreutils = 'policycoreutils-python-utils' } default: { diff --git a/manifests/profile/params.pp b/manifests/profile/params.pp index b7f36b47..60238fe5 100644 --- a/manifests/profile/params.pp +++ b/manifests/profile/params.pp @@ -115,7 +115,7 @@ # Optional. # # [*frontend_type*] What type of frontend to use -# Optional. Options are civetweb, beast, apache-proxy-fcgi or apache-fastcgi. +# Optional. Options are civetweb, beast and apache-proxy-fcgi # # [*rgw_frontends*] Arguments to the rgw frontend # Optional. Example: "civetweb port=7480" diff --git a/manifests/repo.pp b/manifests/repo.pp index 8f0c34da..a196df36 100644 --- a/manifests/repo.pp +++ b/manifests/repo.pp @@ -59,11 +59,6 @@ # [*ceph_mirror*] Ceph mirror used to download packages. # Optional. Defaults to undef. # -# DEPRECATED PARAMETERS -# -# [*fastcgi*] Install Ceph fastcgi apache module for Ceph -# Optional. Defaults to 'false' -# class ceph::repo ( $ensure = present, String[1] $release = $ceph::params::release, @@ -74,14 +69,8 @@ class ceph::repo ( Boolean $enable_sig = $ceph::params::enable_sig, Boolean $stream = false, $ceph_mirror = undef, - # DEPRECATED PARAMETERS - Boolean $fastcgi = false, ) inherits ceph::params { - if $fastcgi and !$ceph::params::fastcgi_available { - warning('The mod_fastcgi package is not available for this operating system version') - } - case $facts['os']['family'] { 'Debian': { include apt @@ -105,22 +94,6 @@ class ceph::repo ( tag => 'ceph', } - if $fastcgi { - apt::key { 'ceph-gitbuilder': - ensure => $ensure, - id => 'FCC5CB2ED8E6F6FB79D5B3316EAEAE2203C3951A', - server => 'keyserver.ubuntu.com', - } - - apt::source { 'ceph-fastcgi': - ensure => $ensure, - location => "http://gitbuilder.ceph.com/libapache-mod-fastcgi-deb-${facts['os']['distro']['codename']}-${facts['os']['hardware']}-basic/ref/master", - release => $facts['os']['distro']['codename'], - require => Apt::Key['ceph-gitbuilder'], - } - - } - Apt::Source<| tag == 'ceph' |> -> Package<| tag == 'ceph' |> Exec['apt_update'] -> Package<| tag == 'ceph' |> } @@ -192,20 +165,6 @@ not on ${facts['os']['name']}, which can lead to packaging issues.") tag => 'ceph', } - if $fastcgi { - yumrepo { 'ext-ceph-fastcgi': - ensure => $ensure, - descr => 'FastCGI basearch packages for Ceph', - name => 'ext-ceph-fastcgi', - baseurl => "http://gitbuilder.ceph.com/mod_fastcgi-rpm-rhel${el}-x86_64-basic/ref/master", - gpgcheck => '1', - gpgkey => 'https://download.ceph.com/keys/autobuild.asc', - mirrorlist => 'absent', - priority => '20', # prefer ceph repos over EPEL - tag => 'ceph', - } - } - # prefer ceph.com repos over EPEL package { 'yum-plugin-priorities': ensure => present, diff --git a/manifests/rgw.pp b/manifests/rgw.pp index 20a62d64..b3a12c74 100644 --- a/manifests/rgw.pp +++ b/manifests/rgw.pp @@ -62,8 +62,8 @@ # Optional. Default is undef. # # [*frontend_type*] What type of frontend to use -# Optional. Default is civetweb, Other options are beast, apache-proxy-fcgi -# or apache-fastcgi. +# Optional. Default is civetweb, The other options are beast and +# apache-proxy-fcgi. # # [*rgw_frontends*] Arguments to the rgw frontend # Optional. Default is undef. @@ -149,20 +149,7 @@ define ceph::rgw ( rgw_frontends => $rgw_frontends, } } - 'apache-fastcgi': { - if $ceph::params::fastcgi_available { - warning('The mod_fastcgi package is not available for this operating system version') - } - ceph_config { - "client.${name}/rgw_port": value => $rgw_port; - "client.${name}/rgw_print_continue": value => $rgw_print_continue; - "client.${name}/rgw_socket_path": value => $rgw_socket_path_real; - } - } 'apache-proxy-fcgi': { - if $ceph::params::fastcgi_available { - warning('The mod_fastcgi package is not available for this operating system version') - } $rgw_frontends_real = pick($rgw_frontends, 'fastcgi socket_port=9000 socket_host=127.0.0.1'); ceph_config { "client.${name}/rgw_frontends": value => $rgw_frontends_real; diff --git a/manifests/rgw/apache_proxy_fcgi.pp b/manifests/rgw/apache_proxy_fcgi.pp index 7a3807df..f4bf2c4d 100644 --- a/manifests/rgw/apache_proxy_fcgi.pp +++ b/manifests/rgw/apache_proxy_fcgi.pp @@ -81,9 +81,6 @@ define ceph::rgw::apache_proxy_fcgi ( ) { include ceph::params - if $ceph::params::fastcgi_available { - warning('The mod_fastcgi package is not available for this operating system version') - } class { 'apache': default_mods => $apache_mods, diff --git a/metadata.json b/metadata.json index 07cfffec..b70370d3 100644 --- a/metadata.json +++ b/metadata.json @@ -25,7 +25,6 @@ { "operatingsystem": "RedHat", "operatingsystemrelease": [ - "7", "8", "9" ] @@ -33,7 +32,6 @@ { "operatingsystem": "CentOS", "operatingsystemrelease": [ - "7", "8", "9" ] diff --git a/releasenotes/notes/remove-centos7-89d168e784485509.yaml b/releasenotes/notes/remove-centos7-89d168e784485509.yaml new file mode 100644 index 00000000..fb30ceb8 --- /dev/null +++ b/releasenotes/notes/remove-centos7-89d168e784485509.yaml @@ -0,0 +1,15 @@ +--- +upgrade: + - | + This module no longer supports CentOS 7 and RHEL 7. + + - | + The support for fastcgi has been removed. Previously Cent OS 7 and RHEL 7 + were only platform supporting fastcgi but these operating system versions + are no longer supported. + +fixes: + - | + The wrong warning about rgw deployment with mod_proxy_fcgi has been + removed. This deployment architecture is still valid in recent operating + systems. diff --git a/spec/classes/ceph_repo_spec.rb b/spec/classes/ceph_repo_spec.rb index f214c981..b4bc9612 100644 --- a/spec/classes/ceph_repo_spec.rb +++ b/spec/classes/ceph_repo_spec.rb @@ -47,36 +47,10 @@ describe 'ceph::repo' do )} end - context 'when wanting fast-cgi' do - let :params do - { - :fastcgi => true - } - end - - it { should contain_apt__key('ceph-gitbuilder').with( - :id => 'FCC5CB2ED8E6F6FB79D5B3316EAEAE2203C3951A', - :server => 'keyserver.ubuntu.com', - )} - - it { should contain_apt__source('ceph').with( - :location => 'http://download.ceph.com/debian-nautilus/', - :release => facts[:os]['distro']['codename'], - )} - - it { should contain_apt__source('ceph-fastcgi').with( - :ensure => 'present', - :location => "http://gitbuilder.ceph.com/libapache-mod-fastcgi-deb-#{facts[:os]['distro']['codename']}-x86_64-basic/ref/master", - :release => facts[:os]['distro']['codename'], - :require => 'Apt::Key[ceph-gitbuilder]' - )} - end - context 'with ensure => absent to disable' do let :params do { :ensure => 'absent', - :fastcgi => true } end @@ -85,13 +59,6 @@ describe 'ceph::repo' do :location => 'http://download.ceph.com/debian-nautilus/', :release => facts[:os]['distro']['codename'], )} - - it { should contain_apt__source('ceph-fastcgi').with( - :ensure => 'absent', - :location => "http://gitbuilder.ceph.com/libapache-mod-fastcgi-deb-#{facts[:os]['distro']['codename']}-x86_64-basic/ref/master", - :release => facts[:os]['distro']['codename'], - :require => 'Apt::Key[ceph-gitbuilder]' - )} end end @@ -241,7 +208,6 @@ describe 'ceph::repo' do let :params do { :ensure => 'absent', - :fastcgi => true } end @@ -278,70 +244,6 @@ describe 'ceph::repo' do :mirrorlist => 'absent', :priority => '10' )} - - it { should contain_yumrepo('ext-ceph-fastcgi').with( - :ensure => 'absent', - :descr => 'FastCGI basearch packages for Ceph', - :name => 'ext-ceph-fastcgi', - :baseurl => "http://gitbuilder.ceph.com/mod_fastcgi-rpm-rhel#{facts[:os]['release']['major']}-x86_64-basic/ref/master", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/autobuild.asc', - :mirrorlist => 'absent', - :priority => '20' - )} - end - - context 'with ceph fast-cgi' do - let :params do - { - :fastcgi => true - } - end - - it { should contain_yumrepo("ext-epel-#{facts[:os]['release']['major']}").with( - :ensure => 'present', - :descr => "External EPEL #{facts[:os]['release']['major']}", - :name => "ext-epel-#{facts[:os]['release']['major']}", - :baseurl => 'absent', - :gpgcheck => '1', - :gpgkey => "https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{facts[:os]['release']['major']}", - :mirrorlist => "http://mirrors.fedoraproject.org/metalink?repo=epel-#{facts[:os]['release']['major']}&arch=$basearch", - :priority => '20', - :exclude => 'python-ceph-compat python-rbd python-rados python-cephfs', - )} - - it { should contain_yumrepo('ext-ceph').with( - :ensure => 'present', - :descr => 'External Ceph nautilus', - :name => 'ext-ceph-nautilus', - :baseurl => "http://download.ceph.com/rpm-nautilus/el#{facts[:os]['release']['major']}/$basearch", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/release.asc', - :mirrorlist => 'absent', - :priority => '10' - )} - - it { should contain_yumrepo('ext-ceph-noarch').with( - :ensure => 'present', - :descr => 'External Ceph noarch', - :name => 'ext-ceph-nautilus-noarch', - :baseurl => "http://download.ceph.com/rpm-nautilus/el#{facts[:os]['release']['major']}/noarch", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/release.asc', - :mirrorlist => 'absent', - :priority => '10' - )} - - it { should contain_yumrepo('ext-ceph-fastcgi').with( - :ensure => 'present', - :descr => 'FastCGI basearch packages for Ceph', - :name => 'ext-ceph-fastcgi', - :baseurl => "http://gitbuilder.ceph.com/mod_fastcgi-rpm-rhel#{facts[:os]['release']['major']}-x86_64-basic/ref/master", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/autobuild.asc', - :mirrorlist => 'absent', - :priority => '20' - )} end end @@ -463,7 +365,6 @@ describe 'ceph::repo' do let :params do { :ensure => 'absent', - :fastcgi => true } end @@ -500,75 +401,7 @@ describe 'ceph::repo' do :mirrorlist => 'absent', :priority => '10' )} - - it { should contain_yumrepo('ext-ceph-fastcgi').with( - :ensure => 'absent', - :descr => 'FastCGI basearch packages for Ceph', - :name => 'ext-ceph-fastcgi', - :baseurl => "http://gitbuilder.ceph.com/mod_fastcgi-rpm-rhel#{facts[:os]['release']['major']}-x86_64-basic/ref/master", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/autobuild.asc', - :mirrorlist => 'absent', - :priority => '20' - )} end - - context 'with ceph fast-cgi' do - let :params do - { - :fastcgi => true - } - end - - it { should contain_yumrepo("ext-epel-#{facts[:os]['release']['major']}").with( - :ensure => 'present', - :descr => "External EPEL #{facts[:os]['release']['major']}", - :name => "ext-epel-#{facts[:os]['release']['major']}", - :baseurl => 'absent', - :gpgcheck => '1', - :gpgkey => "https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{facts[:os]['release']['major']}", - :mirrorlist => "http://mirrors.fedoraproject.org/metalink?repo=epel-#{facts[:os]['release']['major']}&arch=$basearch", - :priority => '20', - :exclude => 'python-ceph-compat python-rbd python-rados python-cephfs', - )} - - it { should contain_yumrepo('ext-ceph').with( - :ensure => 'present', - :descr => 'External Ceph nautilus', - :name => 'ext-ceph-nautilus', - :baseurl => "http://download.ceph.com/rpm-nautilus/el#{facts[:os]['release']['major']}/$basearch", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/release.asc', - :mirrorlist => 'absent', - :priority => '10' - )} - - it { should contain_yumrepo('ext-ceph-noarch').with( - :ensure => 'present', - :descr => 'External Ceph noarch', - :name => 'ext-ceph-nautilus-noarch', - :baseurl => "http://download.ceph.com/rpm-nautilus/el#{facts[:os]['release']['major']}/noarch", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/release.asc', - :mirrorlist => 'absent', - :priority => '10' - )} - - it { should contain_yumrepo('ext-ceph-fastcgi').with( - :ensure => 'present', - :descr => 'FastCGI basearch packages for Ceph', - :name => 'ext-ceph-fastcgi', - :baseurl => "http://gitbuilder.ceph.com/mod_fastcgi-rpm-rhel#{facts[:os]['release']['major']}-x86_64-basic/ref/master", - :gpgcheck => '1', - :gpgkey => 'https://download.ceph.com/keys/autobuild.asc', - :mirrorlist => 'absent', - :priority => '20' - )} - end - end - - shared_examples 'ceph::repo on CentOS Stream 7' do - # No specific test cases end shared_examples 'ceph::repo on CentOS Stream 8' do