CentOS 8 support
- Update package names - Migrate to using apache2_mod_wsgi resource and require apache2 ~> 8.6 - Update ChefSpec Depends-On: https://review.opendev.org/c/openstack/cookbook-openstack-image/+/815148 Change-Id: I7223112092393e3c2ef8a871bb2b2e20326dafdd Signed-off-by: Lance Albertson <lance@osuosl.org>
This commit is contained in:
parent
427adf523c
commit
08f84ac085
|
@ -36,7 +36,7 @@ Cookbooks
|
|||
|
||||
The following cookbooks are dependencies:
|
||||
|
||||
- 'apache2', '~> 8.1'
|
||||
- 'apache2', '~> 8.6'
|
||||
- 'lvm'
|
||||
- 'openstackclient'
|
||||
- 'openstack-common', '>= 20.0.0'
|
||||
|
|
|
@ -87,15 +87,20 @@ when 'rhel' # :pragma-foodcritic: ~FC024 - won't fix this
|
|||
default['openstack']['block-storage']['volume']['iscsi_helper'] = 'lioadm'
|
||||
default['openstack']['block-storage']['platform'] = {
|
||||
'cinder_common_packages' => ['openstack-cinder'],
|
||||
'cinder_api_packages' => %w(openstack-cinder mod_wsgi),
|
||||
'cinder_api_packages' => %w(openstack-cinder),
|
||||
'cinder_api_service' => 'openstack-cinder-api',
|
||||
'cinder_volume_packages' => %w(qemu-img-ev),
|
||||
'cinder_volume_packages' => node['platform_version'].to_i >= 8 ? %w(qemu-img) : %w(qemu-img-ev),
|
||||
'cinder_volume_service' => 'openstack-cinder-volume',
|
||||
'cinder_scheduler_packages' => [],
|
||||
'cinder_scheduler_service' => 'openstack-cinder-scheduler',
|
||||
'cinder_backup_packages' => [],
|
||||
'cinder_backup_service' => 'openstack-cinder-backup',
|
||||
'cinder_iscsitarget_packages' => %w(targetcli dbus-python),
|
||||
'cinder_iscsitarget_packages' =>
|
||||
if node['platform_version'].to_i >= 8
|
||||
%w(targetcli python3-dbus)
|
||||
else
|
||||
%w(targetcli dbus-python)
|
||||
end,
|
||||
'cinder_iscsitarget_service' => 'target',
|
||||
'cinder_lvm_packages' => %w(lvm2),
|
||||
'package_overrides' => '',
|
||||
|
@ -106,7 +111,6 @@ when 'debian'
|
|||
'cinder_common_packages' => %w(cinder-common),
|
||||
'cinder_api_packages' =>
|
||||
%w(
|
||||
libapache2-mod-wsgi-py3
|
||||
python3-cinder
|
||||
cinder-api
|
||||
),
|
||||
|
|
|
@ -9,7 +9,7 @@ version '20.0.0'
|
|||
supports os
|
||||
end
|
||||
|
||||
depends 'apache2', '~> 8.1'
|
||||
depends 'apache2', '~> 8.6'
|
||||
depends 'lvm'
|
||||
depends 'openstackclient'
|
||||
depends 'openstack-common', '>= 20.0.0'
|
||||
|
|
|
@ -77,7 +77,7 @@ else
|
|||
end
|
||||
end
|
||||
|
||||
apache2_module 'wsgi'
|
||||
apache2_mod_wsgi 'openstack'
|
||||
apache2_module 'ssl' if node['openstack']['block-storage']['ssl']['enabled']
|
||||
|
||||
# remove the cinder-wsgi.conf automatically generated from package
|
||||
|
|
|
@ -4,23 +4,32 @@
|
|||
require_relative 'spec_helper'
|
||||
|
||||
describe 'openstack-block-storage::api' do
|
||||
describe 'redhat' do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
ALL_RHEL.each do |p|
|
||||
context "redhat #{p[:version]}" do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(p) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
|
||||
include_context 'block-storage-stubs'
|
||||
include_context 'block-storage-stubs'
|
||||
|
||||
it do
|
||||
expect(chef_run).to_not create_file('/etc/apache2/conf-available/cinder-wsgi.conf')
|
||||
end
|
||||
it do
|
||||
expect(chef_run).to_not create_file('/etc/apache2/conf-available/cinder-wsgi.conf')
|
||||
end
|
||||
|
||||
it do
|
||||
expect(chef_run).to upgrade_package %w(openstack-cinder mod_wsgi)
|
||||
end
|
||||
it do
|
||||
expect(chef_run).to upgrade_package %w(openstack-cinder)
|
||||
end
|
||||
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'MySQL-python'
|
||||
case p
|
||||
when REDHAT_7
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'MySQL-python'
|
||||
end
|
||||
when REDHAT_8
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'python3-PyMySQL'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -23,7 +23,7 @@ describe 'openstack-block-storage::api' do
|
|||
end
|
||||
|
||||
it do
|
||||
expect(chef_run).to upgrade_package %w(libapache2-mod-wsgi-py3 python3-cinder cinder-api)
|
||||
expect(chef_run).to upgrade_package %w(python3-cinder cinder-api)
|
||||
end
|
||||
|
||||
it 'upgrades mysql python3 package' do
|
||||
|
@ -75,7 +75,7 @@ describe 'openstack-block-storage::api' do
|
|||
end
|
||||
|
||||
it do
|
||||
expect(chef_run).to enable_apache2_module('wsgi')
|
||||
expect(chef_run).to create_apache2_mod_wsgi('openstack')
|
||||
end
|
||||
|
||||
it do
|
||||
|
|
|
@ -4,28 +4,37 @@
|
|||
require_relative 'spec_helper'
|
||||
|
||||
describe 'openstack-block-storage::backup' do
|
||||
describe 'redhat' do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
ALL_RHEL.each do |p|
|
||||
context "redhat #{p[:version]}" do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(p) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
|
||||
include_context 'block-storage-stubs'
|
||||
include_context 'block-storage-stubs'
|
||||
|
||||
describe 'enable cinder backup service' do
|
||||
before do
|
||||
node.override['openstack']['block-storage']['backup']['enabled'] = true
|
||||
end
|
||||
describe 'enable cinder backup service' do
|
||||
before do
|
||||
node.override['openstack']['block-storage']['backup']['enabled'] = true
|
||||
end
|
||||
|
||||
it 'starts cinder backup' do
|
||||
expect(chef_run).to start_service 'openstack-cinder-backup'
|
||||
end
|
||||
it 'starts cinder backup' do
|
||||
expect(chef_run).to start_service 'openstack-cinder-backup'
|
||||
end
|
||||
|
||||
it 'starts cinder backup on boot' do
|
||||
expect(chef_run).to enable_service 'openstack-cinder-backup'
|
||||
end
|
||||
it 'starts cinder backup on boot' do
|
||||
expect(chef_run).to enable_service 'openstack-cinder-backup'
|
||||
end
|
||||
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'MySQL-python'
|
||||
case p
|
||||
when REDHAT_7
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'MySQL-python'
|
||||
end
|
||||
when REDHAT_8
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'python3-PyMySQL'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -4,15 +4,17 @@
|
|||
require_relative 'spec_helper'
|
||||
|
||||
describe 'openstack-block-storage::cinder-common' do
|
||||
describe 'rhel' do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
ALL_RHEL.each do |p|
|
||||
context "redhat #{p[:version]}" do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(p) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
|
||||
include_context 'block-storage-stubs'
|
||||
include_context 'block-storage-stubs'
|
||||
|
||||
it 'upgrades the openstack-cinder package' do
|
||||
expect(chef_run).to upgrade_package 'openstack-cinder'
|
||||
it 'upgrades the openstack-cinder package' do
|
||||
expect(chef_run).to upgrade_package 'openstack-cinder'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -4,27 +4,36 @@
|
|||
require_relative 'spec_helper'
|
||||
|
||||
describe 'openstack-block-storage::scheduler' do
|
||||
describe 'redhat' do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
ALL_RHEL.each do |p|
|
||||
context "redhat #{p[:version]}" do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(p) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
|
||||
include_context 'block-storage-stubs'
|
||||
include_context 'block-storage-stubs'
|
||||
|
||||
it 'upgrades cinder scheduler package' do
|
||||
expect(chef_run).to upgrade_package 'openstack-cinder'
|
||||
end
|
||||
it 'upgrades cinder scheduler package' do
|
||||
expect(chef_run).to upgrade_package 'openstack-cinder'
|
||||
end
|
||||
|
||||
it 'starts cinder scheduler' do
|
||||
expect(chef_run).to start_service 'openstack-cinder-scheduler'
|
||||
end
|
||||
it 'starts cinder scheduler' do
|
||||
expect(chef_run).to start_service 'openstack-cinder-scheduler'
|
||||
end
|
||||
|
||||
it 'starts cinder scheduler on boot' do
|
||||
expect(chef_run).to enable_service 'openstack-cinder-scheduler'
|
||||
end
|
||||
it 'starts cinder scheduler on boot' do
|
||||
expect(chef_run).to enable_service 'openstack-cinder-scheduler'
|
||||
end
|
||||
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'MySQL-python'
|
||||
case p
|
||||
when REDHAT_7
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'MySQL-python'
|
||||
end
|
||||
when REDHAT_8
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package 'python3-PyMySQL'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -12,10 +12,21 @@ RSpec.configure do |config|
|
|||
config.file_cache_path = '/var/chef/cache'
|
||||
end
|
||||
|
||||
REDHAT_OPTS = {
|
||||
REDHAT_7 = {
|
||||
platform: 'redhat',
|
||||
version: '7',
|
||||
}.freeze
|
||||
|
||||
REDHAT_8 = {
|
||||
platform: 'redhat',
|
||||
version: '8',
|
||||
}.freeze
|
||||
|
||||
ALL_RHEL = [
|
||||
REDHAT_7,
|
||||
REDHAT_8,
|
||||
].freeze
|
||||
|
||||
UBUNTU_OPTS = {
|
||||
platform: 'ubuntu',
|
||||
version: '18.04',
|
||||
|
|
|
@ -4,36 +4,53 @@
|
|||
require_relative 'spec_helper'
|
||||
|
||||
describe 'openstack-block-storage::volume' do
|
||||
describe 'redhat' do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
ALL_RHEL.each do |p|
|
||||
context "redhat #{p[:version]}" do
|
||||
let(:runner) { ChefSpec::SoloRunner.new(p) }
|
||||
let(:node) { runner.node }
|
||||
cached(:chef_run) { runner.converge(described_recipe) }
|
||||
|
||||
include_context 'block-storage-stubs'
|
||||
include_context 'block-storage-stubs'
|
||||
|
||||
it 'upgrades mysql python package' do
|
||||
expect(chef_run).to upgrade_package('MySQL-python')
|
||||
end
|
||||
case p
|
||||
when REDHAT_7
|
||||
it do
|
||||
expect(chef_run).to upgrade_package('MySQL-python')
|
||||
end
|
||||
|
||||
it 'upgrades qemu-img-ev package' do
|
||||
expect(chef_run).to upgrade_package('qemu-img-ev')
|
||||
end
|
||||
it do
|
||||
expect(chef_run).to upgrade_package('qemu-img-ev')
|
||||
end
|
||||
|
||||
it do
|
||||
expect(chef_run).to upgrade_package %w(targetcli dbus-python)
|
||||
end
|
||||
it do
|
||||
expect(chef_run).to upgrade_package %w(targetcli dbus-python)
|
||||
end
|
||||
when REDHAT_8
|
||||
it do
|
||||
expect(chef_run).to upgrade_package('python3-PyMySQL')
|
||||
end
|
||||
|
||||
it 'starts cinder volume' do
|
||||
expect(chef_run).to start_service('openstack-cinder-volume')
|
||||
end
|
||||
it do
|
||||
expect(chef_run).to upgrade_package('qemu-img')
|
||||
end
|
||||
|
||||
it 'starts cinder volume on boot' do
|
||||
expect(chef_run).to enable_service('openstack-cinder-volume')
|
||||
end
|
||||
it do
|
||||
expect(chef_run).to upgrade_package %w(targetcli python3-dbus)
|
||||
end
|
||||
end
|
||||
|
||||
context 'ISCSI' do
|
||||
it 'starts iscsi target on boot' do
|
||||
expect(chef_run).to enable_service('iscsitarget')
|
||||
it do
|
||||
expect(chef_run).to start_service('openstack-cinder-volume')
|
||||
end
|
||||
|
||||
it do
|
||||
expect(chef_run).to enable_service('openstack-cinder-volume')
|
||||
end
|
||||
|
||||
context 'ISCSI' do
|
||||
it do
|
||||
expect(chef_run).to enable_service('iscsitarget')
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue