From a92e08ecc243fab588b813eda06a218d7495b172 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Sun, 3 Jul 2022 22:42:46 +0900 Subject: [PATCH] Debian/Ubuntu: The staging driver package is not available ... so the deployment should fail the user explicitly requires it. Change-Id: Ibd0fe69f2a2d0defb648d06e8098712f84de45e6 --- manifests/drivers/staging.pp | 13 ++++++++----- spec/classes/ironic_drivers_staging_spec.rb | 9 ++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/manifests/drivers/staging.pp b/manifests/drivers/staging.pp index 2f66aadd..d3389961 100644 --- a/manifests/drivers/staging.pp +++ b/manifests/drivers/staging.pp @@ -15,10 +15,13 @@ class ironic::drivers::staging ( include ironic::deps include ironic::params - package { 'ironic-staging-drivers': - ensure => $package_ensure, - name => $::ironic::params::staging_drivers_package, - tag => ['openstack', 'ironic-support-package'], + if $::ironic::params::staging_drivers_package { + package { 'ironic-staging-drivers': + ensure => $package_ensure, + name => $::ironic::params::staging_drivers_package, + tag => ['openstack', 'ironic-support-package'], + } + } else { + fail('This distribution does not provide the staging driver package.') } - } diff --git a/spec/classes/ironic_drivers_staging_spec.rb b/spec/classes/ironic_drivers_staging_spec.rb index 1aa239ef..14a16167 100644 --- a/spec/classes/ironic_drivers_staging_spec.rb +++ b/spec/classes/ironic_drivers_staging_spec.rb @@ -41,18 +41,17 @@ describe 'ironic::drivers::staging' do end end - # TODO: use OSDefaults.get_supported_os when ironic-staging-drivers is - # packaged for Debian and Ubuntu on_supported_os({ - :supported_os => [ { 'operatingsystem' => 'CentOS', - 'operatingsystemrelease' => [ '7' ] } ] + :supported_os => OSDefaults.get_supported_os }).each do |os,facts| context "on #{os}" do let (:facts) do facts.merge!(OSDefaults.get_facts()) end - it_configures 'ironic-staging-drivers' + if facts[:osfamily] == 'RedHat' + it_configures 'ironic-staging-drivers' + end end end