CentOS 8 support

- Update package names
- Migrate to using apache2_mod_wsgi resource and require apache2 ~> 8.6
- Don't add --listen to libvirtd on EL8
- Update ChefSpec

Depends-On: https://review.opendev.org/c/openstack/cookbook-openstack-image/+/815148
Depends-On: https://review.opendev.org/c/openstack/cookbook-openstack-network/+/815172
Change-Id: I2e66b923b91d763ea7f484421dbdad883d9117a3
Signed-off-by: Lance Albertson <lance@osuosl.org>
This commit is contained in:
Lance Albertson
2021-10-22 15:43:44 -07:00
parent d15e1572ab
commit dd5a46c6dd
24 changed files with 316 additions and 245 deletions

View File

@@ -36,7 +36,7 @@ Cookbooks
The following cookbooks are dependencies:
- 'apache2', '~> 8.1'
- 'apache2', '~> 8.6'
- 'openstackclient'
- 'openstack-common', '>= 20.0.0'
- 'openstack-identity', '>= 20.0.0'

View File

@@ -58,7 +58,12 @@ when 'rhel' # :pragma-foodcritic: ~FC024 - won't fix this
default['openstack']['compute']['platform'] = {
'api_os_compute_packages' => ['openstack-nova-api'],
'api_os_compute_service' => 'openstack-nova-api',
'memcache_python_packages' => ['python-memcached'],
'memcache_python_packages' =>
if node['platform_version'].to_i >= 8
['python3-memcached']
else
['python-memcached']
end,
'compute_api_metadata_packages' => ['openstack-nova-api'],
'compute_api_metadata_service' => 'openstack-nova-metadata-api',
'compute_compute_packages' => ['openstack-nova-compute'],
@@ -75,13 +80,18 @@ when 'rhel' # :pragma-foodcritic: ~FC024 - won't fix this
'compute_spiceproxy_service' => 'openstack-nova-spicehtml5proxy',
'compute_serialproxy_packages' => ['openstack-nova-serialproxy'],
'compute_serialproxy_service' => 'openstack-nova-serialproxy',
'libvirt_packages' => %w(libvirt device-mapper python-libguestfs),
'libvirt_packages' =>
if node['platform_version'].to_i >= 8
%w(libvirt device-mapper python3-libguestfs)
else
%w(libvirt device-mapper python-libguestfs)
end,
'libvirt_service' => 'libvirtd',
'dbus_service' => 'messagebus',
'compute_cert_packages' => ['openstack-nova-cert'],
'compute_cert_service' => 'openstack-nova-cert',
'mysql_service' => 'mysqld',
'common_packages' => %w(openstack-nova-common mod_wsgi),
'common_packages' => %w(openstack-nova-common),
'iscsi_helper' => 'ietadm',
'volume_packages' => %w(sysfsutils sg3_utils device-mapper-multipath),
'package_overrides' => '',

View File

@@ -36,7 +36,7 @@ when 'rhel' # :pragma-foodcritic: ~FC024 - won't fix this
}
when 'debian'
default['openstack']['placement']['platform'] = {
'placement_packages' => %w(python3-placement libapache2-mod-wsgi-py3),
'placement_packages' => %w(python3-placement),
'placement_service' => 'placement-api',
}
end

View File

@@ -13,7 +13,7 @@ chef_version '>= 16.0'
supports os
end
depends 'apache2', '~> 8.1'
depends 'apache2', '~> 8.6'
depends 'openstack-common', '>= 20.0.0'
depends 'openstack-identity', '>= 20.0.0'
depends 'openstack-image', '>= 20.0.0'

View File

@@ -64,7 +64,7 @@ else
end
end
apache2_module 'wsgi'
apache2_mod_wsgi 'api-metadata'
apache2_module 'ssl' if node['openstack']['compute']['metadata']['ssl']['enabled']
template "#{apache_dir}/sites-available/nova-metadata.conf" do

View File

@@ -72,7 +72,7 @@ else
end
end
apache2_module 'wsgi'
apache2_mod_wsgi 'api-os-compute'
apache2_module 'ssl' if node['openstack']['compute']['api']['ssl']['enabled']
template "#{apache_dir}/sites-available/nova-api.conf" do

View File

@@ -113,7 +113,7 @@ else
end
end
apache2_module 'wsgi'
apache2_mod_wsgi 'placement'
apache2_module 'ssl' if node['openstack']['placement']['ssl']['enabled']
template "#{apache_dir}/sites-available/placement.conf" do

View File

@@ -2,9 +2,9 @@
# Cookbook:: openstack-compute
# Recipe:: spiceproxy
#
# Copyright:: 2012, Rackspace US, Inc.
# Copyright:: 2013, Craig Tracey <craigtracey@gmail.com>
# Copyright:: 2020, Oregon State University
# Copyright:: 2012-2021, Rackspace US, Inc.
# Copyright:: 2013-2021, Craig Tracey <craigtracey@gmail.com>
# Copyright:: 2020-2021, Oregon State University
# Copyright:: 2021, Marek Szuba <m.szuba@gsi.de>
#
# Licensed under the Apache License, Version 2.0 (the "License");

View File

@@ -1,26 +1,28 @@
require_relative 'spec_helper'
describe 'openstack-compute::api-metadata' 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 'compute_stubs'
include_examples 'expect_runs_nova_apache_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_apache_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'upgrades metadata api packages' do
expect(chef_run).to upgrade_package 'openstack-nova-api'
end
it 'upgrades metadata api packages' do
expect(chef_run).to upgrade_package 'openstack-nova-api'
end
it 'disables metadata api on boot' do
expect(chef_run).to disable_service 'nova-api-metadata'
end
it 'disables metadata api on boot' do
expect(chef_run).to disable_service 'nova-api-metadata'
end
it 'stops metadata api now' do
expect(chef_run).to stop_service 'nova-api-metadata'
it 'stops metadata api now' do
expect(chef_run).to stop_service 'nova-api-metadata'
end
end
end
end

View File

@@ -26,7 +26,7 @@ describe 'openstack-compute::api-metadata' do
end
it do
expect(chef_run).to enable_apache2_module('wsgi')
expect(chef_run).to create_apache2_mod_wsgi 'api-metadata'
end
it do

View File

@@ -1,36 +1,38 @@
require_relative 'spec_helper'
describe 'openstack-compute::api-os-compute' 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 'compute_stubs'
include_examples 'expect_runs_nova_apache_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_apache_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'executes nova-manage api_db sync' do
expect(chef_run).to run_execute('nova-manage api_db sync')
.with(
timeout: 3600,
user: 'nova',
group: 'nova',
command: 'nova-manage api_db sync'
)
end
it 'executes nova-manage api_db sync' do
expect(chef_run).to run_execute('nova-manage api_db sync')
.with(
timeout: 3600,
user: 'nova',
group: 'nova',
command: 'nova-manage api_db sync'
)
end
it 'upgrades openstack api packages' do
expect(chef_run).to upgrade_package 'openstack-nova-api'
end
it 'upgrades openstack api packages' do
expect(chef_run).to upgrade_package 'openstack-nova-api'
end
it 'disables openstack api on boot' do
expect(chef_run).to disable_service 'openstack-nova-api'
end
it 'disables openstack api on boot' do
expect(chef_run).to disable_service 'openstack-nova-api'
end
it 'stops openstack api now' do
expect(chef_run).to stop_service 'openstack-nova-api'
it 'stops openstack api now' do
expect(chef_run).to stop_service 'openstack-nova-api'
end
end
end
end

View File

@@ -35,7 +35,7 @@ describe 'openstack-compute::api-os-compute' do
end
it do
expect(chef_run).to enable_apache2_module('wsgi')
expect(chef_run).to create_apache2_mod_wsgi 'api-os-compute'
end
it do

View File

@@ -1,49 +1,51 @@
require_relative 'spec_helper'
describe 'openstack-compute::compute' 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 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_examples 'expect_creates_nova_instances_dir'
include_examples 'expect_volume_packages'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_examples 'expect_creates_nova_instances_dir'
include_examples 'expect_volume_packages'
context "does not upgrade kvm when virt_type is 'kvm'" do
cached(:chef_run) do
node.override['openstack']['compute']['libvirt']['virt_type'] = 'kvm'
runner.converge(described_recipe)
context "does not upgrade kvm when virt_type is 'kvm'" do
cached(:chef_run) do
node.override['openstack']['compute']['libvirt']['virt_type'] = 'kvm'
runner.converge(described_recipe)
end
it do
expect(chef_run).to_not upgrade_package('nova-compute-kvm')
end
end
it do
expect(chef_run).to_not upgrade_package('nova-compute-kvm')
context "does not upgrade qemu when virt_type is 'qemu'" do
cached(:chef_run) do
node.override['openstack']['compute']['libvirt']['virt_type'] = 'qemu'
runner.converge(described_recipe)
end
it do
expect(chef_run).to_not upgrade_package('nova-compute-qemu')
end
end
end
context "does not upgrade qemu when virt_type is 'qemu'" do
cached(:chef_run) do
node.override['openstack']['compute']['libvirt']['virt_type'] = 'qemu'
runner.converge(described_recipe)
it 'upgrades nova compute package' do
expect(chef_run).to upgrade_package('openstack-nova-compute')
end
it do
expect(chef_run).to_not upgrade_package('nova-compute-qemu')
it 'starts nova compute on boot' do
expected = 'openstack-nova-compute'
expect(chef_run).to enable_service(expected)
end
end
it 'upgrades nova compute package' do
expect(chef_run).to upgrade_package('openstack-nova-compute')
end
it 'starts nova compute on boot' do
expected = 'openstack-nova-compute'
expect(chef_run).to enable_service(expected)
end
it 'starts nova compute' do
expect(chef_run).to start_service('openstack-nova-compute')
it 'starts nova compute' do
expect(chef_run).to start_service('openstack-nova-compute')
end
end
end
end

View File

@@ -1,26 +1,28 @@
require_relative 'spec_helper'
describe 'openstack-compute::conductor' 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 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'upgrades conductor package' do
expect(chef_run).to upgrade_package 'openstack-nova-conductor'
end
it 'upgrades conductor package' do
expect(chef_run).to upgrade_package 'openstack-nova-conductor'
end
it 'starts nova-conductor on boot' do
expect(chef_run).to enable_service 'openstack-nova-conductor'
end
it 'starts nova-conductor on boot' do
expect(chef_run).to enable_service 'openstack-nova-conductor'
end
it 'starts nova-conductor' do
expect(chef_run).to start_service 'openstack-nova-conductor'
it 'starts nova-conductor' do
expect(chef_run).to start_service 'openstack-nova-conductor'
end
end
end
end

View File

@@ -1,55 +1,70 @@
require_relative 'spec_helper'
describe 'openstack-compute::libvirt' 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 'compute_stubs'
include_context 'compute_stubs'
it do
expect(chef_run).to upgrade_package %w(libvirt device-mapper python-libguestfs)
end
it 'creates libvirt group and adds nova as a member' do
expect(chef_run).to create_group('libvirt').with(members: ['nova'])
end
it 'symlinks qemu-kvm' do
expect(chef_run).to create_link('/usr/bin/qemu-system-x86_64').with(to: '/usr/libexec/qemu-kvm')
end
it 'starts libvirt' do
expect(chef_run).to start_service 'libvirtd'
end
it 'starts libvirt on boot' do
expect(chef_run).to enable_service 'libvirtd'
end
it 'does not create /etc/default/libvirt-bin' do
expect(chef_run).not_to create_template('/etc/default/libvirt-bin')
end
describe '/etc/sysconfig/libvirtd' do
let(:file) { chef_run.template('/etc/sysconfig/libvirtd') }
it 'creates the /etc/sysconfig/libvirtd file' do
expect(chef_run).to create_template(file.name).with(
owner: 'root',
group: 'root',
mode: '644'
)
case p
when REDHAT_7
it do
expect(chef_run).to upgrade_package %w(libvirt device-mapper python-libguestfs)
end
when REDHAT_8
it do
expect(chef_run).to upgrade_package %w(libvirt device-mapper python3-libguestfs)
end
end
it 'template contents' do
expect(chef_run).to render_file(file.name)
.with_content(/^LIBVIRTD_ARGS="--listen"$/)
it 'creates libvirt group and adds nova as a member' do
expect(chef_run).to create_group('libvirt').with(members: ['nova'])
end
it 'notifies libvirt-bin restart' do
expect(file).to notify('service[libvirt-bin]').to(:restart)
it 'symlinks qemu-kvm' do
expect(chef_run).to create_link('/usr/bin/qemu-system-x86_64').with(to: '/usr/libexec/qemu-kvm')
end
it 'starts libvirt' do
expect(chef_run).to start_service 'libvirtd'
end
it 'starts libvirt on boot' do
expect(chef_run).to enable_service 'libvirtd'
end
it 'does not create /etc/default/libvirt-bin' do
expect(chef_run).not_to create_template('/etc/default/libvirt-bin')
end
describe '/etc/sysconfig/libvirtd' do
let(:file) { chef_run.template('/etc/sysconfig/libvirtd') }
it 'creates the /etc/sysconfig/libvirtd file' do
expect(chef_run).to create_template(file.name).with(
owner: 'root',
group: 'root',
mode: '644'
)
end
case p
when REDHAT_7
it 'template contents' do
expect(chef_run).to render_file(file.name).with_content(/^LIBVIRTD_ARGS="--listen"$/)
end
when REDHAT_8
it 'template contents' do
expect(chef_run).to_not render_file(file.name).with_content(/^LIBVIRTD_ARGS="--listen"$/)
end
end
it 'notifies libvirt-bin restart' do
expect(file).to notify('service[libvirt-bin]').to(:restart)
end
end
end
end

View File

@@ -1,25 +1,38 @@
require_relative 'spec_helper'
describe 'openstack-compute::nova-common' 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 'compute_stubs'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it do
expect(chef_run).to upgrade_package %w(openstack-nova-common mod_wsgi)
end
it do
expect(chef_run).to upgrade_package %w(openstack-nova-common)
end
it 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 do
expect(chef_run).to upgrade_package 'python-memcached'
it do
expect(chef_run).to upgrade_package 'python-memcached'
end
when REDHAT_8
it do
expect(chef_run).to upgrade_package 'python3-PyMySQL'
end
it do
expect(chef_run).to upgrade_package 'python3-memcached'
end
end
end
end
end

View File

@@ -1,23 +1,25 @@
require_relative 'spec_helper'
describe 'openstack-compute::placement_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 'compute_stubs'
include_examples 'expect_runs_nova_apache_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_apache_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'upgrades placement packages' do
expect(chef_run).to upgrade_package 'openstack-placement-api'
end
it 'upgrades placement packages' do
expect(chef_run).to upgrade_package 'openstack-placement-api'
end
it do
expect(chef_run).to disable_service 'openstack-placement-api'
expect(chef_run).to stop_service 'openstack-placement-api'
it do
expect(chef_run).to disable_service 'openstack-placement-api'
expect(chef_run).to stop_service 'openstack-placement-api'
end
end
end
end

View File

@@ -11,7 +11,7 @@ describe 'openstack-compute::placement_api' do
include_examples 'expect_runs_nova_apache_recipe'
it do
expect(chef_run).to upgrade_package %w(python3-placement libapache2-mod-wsgi-py3)
expect(chef_run).to upgrade_package %w(python3-placement)
end
it do
@@ -31,7 +31,7 @@ describe 'openstack-compute::placement_api' do
end
it do
expect(chef_run).to enable_apache2_module('wsgi')
expect(chef_run).to create_apache2_mod_wsgi 'placement'
end
it do

View File

@@ -1,26 +1,28 @@
require_relative 'spec_helper'
describe 'openstack-compute::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 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'upgrades nova scheduler package' do
expect(chef_run).to upgrade_package('openstack-nova-scheduler')
end
it 'upgrades nova scheduler package' do
expect(chef_run).to upgrade_package('openstack-nova-scheduler')
end
it 'starts nova scheduler' do
expect(chef_run).to start_service('openstack-nova-scheduler')
end
it 'starts nova scheduler' do
expect(chef_run).to start_service('openstack-nova-scheduler')
end
it 'starts nova scheduler on boot' do
expect(chef_run).to enable_service('openstack-nova-scheduler')
it 'starts nova scheduler on boot' do
expect(chef_run).to enable_service('openstack-nova-scheduler')
end
end
end
end

View File

@@ -1,26 +1,28 @@
require_relative 'spec_helper'
describe 'openstack-compute::serialproxy' 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 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'upgrades nova serialproxy package' do
expect(chef_run).to upgrade_package('openstack-nova-serialproxy')
end
it 'upgrades nova serialproxy package' do
expect(chef_run).to upgrade_package('openstack-nova-serialproxy')
end
it 'starts nova serialproxy' do
expect(chef_run).to start_service('openstack-nova-serialproxy')
end
it 'starts nova serialproxy' do
expect(chef_run).to start_service('openstack-nova-serialproxy')
end
it 'starts nova serialproxy on boot' do
expect(chef_run).to enable_service('openstack-nova-serialproxy')
it 'starts nova serialproxy on boot' do
expect(chef_run).to enable_service('openstack-nova-serialproxy')
end
end
end
end

View File

@@ -10,10 +10,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',

View File

@@ -1,26 +1,28 @@
require_relative 'spec_helper'
describe 'openstack-compute::spiceproxy' 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 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it do
expect(chef_run).to upgrade_package %w(openstack-nova-spicehtml5proxy spice-html5)
end
it do
expect(chef_run).to upgrade_package %w(openstack-nova-spicehtml5proxy spice-html5)
end
it 'starts nova spicehtml5proxy' do
expect(chef_run).to start_service('openstack-nova-spicehtml5proxy')
end
it 'starts nova spicehtml5proxy' do
expect(chef_run).to start_service('openstack-nova-spicehtml5proxy')
end
it 'starts nova spicehtml5proxy on boot' do
expect(chef_run).to enable_service('openstack-nova-spicehtml5proxy')
it 'starts nova spicehtml5proxy on boot' do
expect(chef_run).to enable_service('openstack-nova-spicehtml5proxy')
end
end
end
end

View File

@@ -1,26 +1,28 @@
require_relative 'spec_helper'
describe 'openstack-compute::vncproxy' 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 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
include_context 'compute_stubs'
include_examples 'expect_runs_nova_common_recipe'
include_examples 'expect_creates_nova_state_dir'
include_examples 'expect_creates_nova_lock_dir'
it 'upgrades nova vncproxy package' do
expect(chef_run).to upgrade_package('openstack-nova-novncproxy')
end
it 'upgrades nova vncproxy package' do
expect(chef_run).to upgrade_package('openstack-nova-novncproxy')
end
it 'starts nova vncproxy' do
expect(chef_run).to start_service('openstack-nova-novncproxy')
end
it 'starts nova vncproxy' do
expect(chef_run).to start_service('openstack-nova-novncproxy')
end
it 'starts nova vncproxy on boot' do
expect(chef_run).to enable_service('openstack-nova-novncproxy')
it 'starts nova vncproxy on boot' do
expect(chef_run).to enable_service('openstack-nova-novncproxy')
end
end
end
end

View File

@@ -8,7 +8,11 @@
# Listen for TCP/IP connections
# NB. must setup TLS/SSL keys prior to using this
<% if node['platform_family'] == 'rhel' && node['platform_version'].to_i >= 8 -%>
#LIBVIRTD_ARGS="--listen"
<% else -%>
LIBVIRTD_ARGS="--listen"
<% end -%>
# Override Kerberos service keytab for SASL/GSSAPI
#KRB5_KTNAME=/etc/libvirt/krb5.tab