nova_compute_ironic_spec.rb 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. require 'spec_helper'
  2. describe 'nova::compute::ironic' do
  3. shared_examples_for 'nova-compute-ironic' do
  4. context 'with default parameters' do
  5. it 'configures ironic in nova.conf' do
  6. is_expected.to contain_nova_config('DEFAULT/compute_driver').with_value('ironic.IronicDriver')
  7. is_expected.to contain_nova_config('DEFAULT/max_concurrent_builds').with_value('<SERVICE DEFAULT>')
  8. end
  9. end
  10. context 'with overridden parameters' do
  11. let :params do
  12. {
  13. :compute_driver => 'ironic.FoobarDriver',
  14. :max_concurrent_builds => 15,
  15. }
  16. end
  17. it 'configures ironic in nova.conf' do
  18. is_expected.to contain_nova_config('DEFAULT/compute_driver').with_value('ironic.FoobarDriver')
  19. is_expected.to contain_nova_config('DEFAULT/max_concurrent_builds').with_value(15)
  20. end
  21. end
  22. context 'always' do
  23. it 'contains the ironic common class' do
  24. is_expected.to contain_class('nova::ironic::common')
  25. end
  26. end
  27. end
  28. on_supported_os({
  29. :supported_os => OSDefaults.get_supported_os
  30. }).each do |os,facts|
  31. context "on #{os}" do
  32. let (:facts) do
  33. facts.merge!(OSDefaults.get_facts({
  34. :fqdn => 'some.host.tld',
  35. :processorcount => 2,
  36. :concat_basedir => '/var/lib/puppet/concat'
  37. }))
  38. end
  39. let(:platform_params) do
  40. case facts[:osfamily]
  41. when 'Debian'
  42. {}
  43. when 'RedHat'
  44. {}
  45. end
  46. end
  47. it_configures 'nova-compute-ironic'
  48. end
  49. end
  50. end