nova_serial_proxy_spec.rb 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. require 'spec_helper'
  2. describe 'nova::serialproxy' do
  3. let :pre_condition do
  4. 'include nova'
  5. end
  6. let :params do
  7. { :enabled => true }
  8. end
  9. shared_examples 'nova-serialproxy' do
  10. it 'configures nova.conf' do
  11. is_expected.to contain_nova_config('serial_console/serialproxy_host').with(:value => '0.0.0.0')
  12. is_expected.to contain_nova_config('serial_console/serialproxy_port').with(:value => '6083')
  13. end
  14. it { is_expected.to contain_package('nova-serialproxy').with(
  15. :name => platform_params[:serialproxy_package_name],
  16. :ensure => 'present'
  17. ) }
  18. it { is_expected.to contain_service('nova-serialproxy').with(
  19. :name => platform_params[:serialproxy_service_name],
  20. :hasstatus => 'true',
  21. :ensure => 'running'
  22. )}
  23. context 'with manage_service as false' do
  24. let :params do
  25. { :enabled => true,
  26. :manage_service => false
  27. }
  28. end
  29. it { is_expected.to contain_service('nova-serialproxy').without_ensure }
  30. end
  31. context 'with package version' do
  32. let :params do
  33. { :ensure_package => '2012.2' }
  34. end
  35. it { is_expected.to contain_package('nova-serialproxy').with(
  36. :ensure => params[:ensure_package]
  37. )}
  38. end
  39. end
  40. context 'on Ubuntu system' do
  41. let :facts do
  42. @default_facts.merge({
  43. :osfamily => 'Debian',
  44. :operatingsystem => 'Ubuntu'
  45. })
  46. end
  47. let :platform_params do
  48. { :serialproxy_package_name => 'nova-serialproxy',
  49. :serialproxy_service_name => 'nova-serialproxy' }
  50. end
  51. it_configures 'nova-serialproxy'
  52. end
  53. context 'on Debian system' do
  54. let :facts do
  55. @default_facts.merge({
  56. :osfamily => 'Debian',
  57. :operatingsystem => 'Debian'
  58. })
  59. end
  60. let :platform_params do
  61. { :serialproxy_package_name => 'nova-serialproxy',
  62. :serialproxy_service_name => 'nova-serialproxy' }
  63. end
  64. it_configures 'nova-serialproxy'
  65. end
  66. context 'on Redhat platforms' do
  67. let :facts do
  68. @default_facts.merge({ :osfamily => 'RedHat' })
  69. end
  70. let :platform_params do
  71. { :serialproxy_package_name => 'openstack-nova-serialproxy',
  72. :serialproxy_service_name => 'openstack-nova-serialproxy' }
  73. end
  74. it_configures 'nova-serialproxy'
  75. end
  76. end