CentOS 8 support

- Update ChefSpec

Depends-On: https://review.opendev.org/c/openstack/cookbook-openstack-network/+/815172
Change-Id: I617cdb3879dbb1827dff542888808f96dd988c1e
Signed-off-by: Lance Albertson <lance@osuosl.org>
This commit is contained in:
Lance Albertson
2021-10-22 16:05:34 -07:00
parent 0731b49f19
commit c6042984e7
8 changed files with 188 additions and 155 deletions

View File

@@ -1,28 +1,30 @@
require_relative 'spec_helper'
describe 'openstack-dns::api' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate-api').with(
service_name: 'designate-api',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate-api')
end
it do
expect(chef_run.service('designate-api')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate-api').with(
service_name: 'designate-api',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate-api')
end
it do
expect(chef_run.service('designate-api')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
end
end
end
end

View File

@@ -1,28 +1,30 @@
require_relative 'spec_helper'
describe 'openstack-dns::central' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_central').with(
service_name: 'designate-central',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_central')
end
it do
expect(chef_run.service('designate_central')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_central').with(
service_name: 'designate-central',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_central')
end
it do
expect(chef_run.service('designate_central')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
end
end
end
end

View File

@@ -1,42 +1,52 @@
require_relative 'spec_helper'
describe 'openstack-dns::common' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to_not include_recipe('openstack-common::logging')
end
it 'install designate packages' do
expect(chef_run).to upgrade_package %w(openstack-designate-api openstack-designate-central openstack-designate-mdns openstack-designate-producer openstack-designate-worker openstack-designate-sink)
end
it do
expect(chef_run).to upgrade_package('MySQL-python')
end
it do
expect(chef_run).to create_template('/etc/designate/pools.yaml').with(
source: 'pools.yaml.erb',
owner: 'designate',
group: 'designate',
mode: '644',
variables: {
banner: "\n# This file was autogenerated by Chef\n# Do not edit, changes will be overwritten\n",
bind_hosts: %w(127.0.0.1),
masters: %w(127.0.0.1),
ns_addresses: %w(127.0.0.1),
ns_hostnames: %w(ns1.example.org.),
rndc_key: '/etc/designate/rndc.key',
}
)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to_not include_recipe('openstack-common::logging')
end
it 'install designate packages' do
expect(chef_run).to upgrade_package %w(openstack-designate-api openstack-designate-central openstack-designate-mdns openstack-designate-producer openstack-designate-worker openstack-designate-sink)
end
case p
when REDHAT_7
it do
expect(chef_run).to upgrade_package('MySQL-python')
end
when REDHAT_8
it do
expect(chef_run).to upgrade_package('python3-PyMySQL')
end
end
it do
expect(chef_run).to create_template('/etc/designate/pools.yaml').with(
source: 'pools.yaml.erb',
owner: 'designate',
group: 'designate',
mode: '644',
variables: {
banner: "\n# This file was autogenerated by Chef\n# Do not edit, changes will be overwritten\n",
bind_hosts: %w(127.0.0.1),
masters: %w(127.0.0.1),
ns_addresses: %w(127.0.0.1),
ns_hostnames: %w(ns1.example.org.),
rndc_key: '/etc/designate/rndc.key',
}
)
end
end
end
end

View File

@@ -1,28 +1,30 @@
require_relative 'spec_helper'
describe 'openstack-dns::mdns' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_mdns').with(
service_name: 'designate-mdns',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_mdns')
end
it do
expect(chef_run.service('designate_mdns')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_mdns').with(
service_name: 'designate-mdns',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_mdns')
end
it do
expect(chef_run.service('designate_mdns')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
end
end
end
end

View File

@@ -1,28 +1,30 @@
require_relative 'spec_helper'
describe 'openstack-dns::producer' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_producer').with(
service_name: 'designate-producer',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_producer')
end
it do
expect(chef_run.service('designate_producer')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_producer').with(
service_name: 'designate-producer',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_producer')
end
it do
expect(chef_run.service('designate_producer')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
end
end
end
end

View File

@@ -1,28 +1,30 @@
require_relative 'spec_helper'
describe 'openstack-dns::sink' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_sink').with(
service_name: 'designate-sink',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_sink')
end
it do
expect(chef_run.service('designate_sink')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_sink').with(
service_name: 'designate-sink',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_sink')
end
it do
expect(chef_run.service('designate_sink')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
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,28 +1,30 @@
require_relative 'spec_helper'
describe 'openstack-dns::worker' do
describe 'redhat' do
let(:runner) { ChefSpec::SoloRunner.new(REDHAT_OPTS) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
ALL_RHEL.each do |p|
context "redhat #{p[:version]}" do
let(:runner) { ChefSpec::SoloRunner.new(p) }
let(:node) { runner.node }
cached(:chef_run) do
runner.converge(described_recipe)
end
include_context 'dns-stubs'
include_context 'dns-stubs'
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_worker').with(
service_name: 'designate-worker',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_worker')
end
it do
expect(chef_run.service('designate_worker')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
it 'converges successfully' do
expect { :chef_run }.to_not raise_error
end
it do
expect(chef_run).to enable_service('designate_worker').with(
service_name: 'designate-worker',
supports: { restart: true, status: true }
)
expect(chef_run).to start_service('designate_worker')
end
it do
expect(chef_run.service('designate_worker')).to \
subscribe_to('template[/etc/designate/designate.conf]').on(:restart)
end
end
end
end