1e8d747269
The new openstackclient tag was added so that we can get all resources about openstack CLI more easily. This adds this tag to ironicclient because the plugin provides some sub-commands. This also removes the support package tag because the client package is not at all used by ironic itself. In addition, openstackclient is needed to query keystone api when transform in ironic_config is used. Depends-on: https://review.opendev.org/899594 Change-Id: I46dcf0f8e7f9b72d27317d310bffdd25653a25cf
63 lines
1.7 KiB
Ruby
63 lines
1.7 KiB
Ruby
#
|
|
# Copyright (C) 2013 eNovance SAS <licensing@enovance.com>
|
|
#
|
|
# Author: Emilien Macchi <emilien.macchi@enovance.com>
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
#
|
|
# Unit tests for ironic::client
|
|
#
|
|
|
|
require 'spec_helper'
|
|
|
|
describe 'ironic::client' do
|
|
|
|
shared_examples_for 'ironic client' do
|
|
|
|
it { is_expected.to contain_class('ironic::deps') }
|
|
it { is_expected.to contain_class('ironic::params') }
|
|
|
|
it 'installs ironic client package' do
|
|
is_expected.to contain_package('python-ironicclient').with(
|
|
:ensure => 'present',
|
|
:name => platform_params[:client_package],
|
|
:tag => ['openstack', 'openstackclient']
|
|
)
|
|
end
|
|
|
|
it { is_expected.to contain_class('openstacklib::openstackclient') }
|
|
end
|
|
|
|
on_supported_os({
|
|
:supported_os => OSDefaults.get_supported_os
|
|
}).each do |os,facts|
|
|
context "on #{os}" do
|
|
let (:facts) do
|
|
facts.merge!(OSDefaults.get_facts())
|
|
end
|
|
|
|
let(:platform_params) do
|
|
case facts[:os]['family']
|
|
when 'Debian'
|
|
{ :client_package => 'python3-ironicclient' }
|
|
when 'RedHat'
|
|
{ :client_package => 'python3-ironicclient' }
|
|
end
|
|
end
|
|
|
|
it_behaves_like 'ironic client'
|
|
end
|
|
end
|
|
|
|
end
|