diff --git a/files/patches/670b3882-fix-rpc-control_exchange-regression.patch b/files/patches/670b3882-fix-rpc-control_exchange-regression.patch new file mode 100644 index 00000000..d54e4bed --- /dev/null +++ b/files/patches/670b3882-fix-rpc-control_exchange-regression.patch @@ -0,0 +1,12 @@ +--- a/nova/flags.py ++++ b/nova/flags.py +@@ -425,6 +425,9 @@ global_opts = [ + 'include: libvirt.LibvirtDriver, xenapi.XenAPIDriver, ' + 'fake.FakeDriver, baremetal.BareMetalDriver, ' + 'vmwareapi.VMWareESXDriver'), ++ cfg.StrOpt('control_exchange', ++ default='nova', ++ help='AMQP exchange to connect to if using RabbitMQ or Qpid'), + ] + + FLAGS.register_opts(global_opts) diff --git a/manifests/init.pp b/manifests/init.pp index 064fcb04..c43a2a59 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -74,4 +74,19 @@ class ceilometer( 'DEFAULT/notification_topics' : value => 'notifications,glance_notifications'; } + file { '/tmp/670b3882-fix-rpc-control_exchange-regression.patch': + source => 'puppet:///modules/ceilometer/patches/670b3882-fix-rpc-control_exchange-regression.patch' + } + + exec { 'patch_nova': + command => 'patch -p1 < /tmp/670b3882-fix-rpc-control_exchange-regression.patch', + unless => 'grep -q control_exchange /usr/share/pyshared/nova/flags.py', + cwd => '/usr/share/pyshared', + require => Package['python-nova'], + } + + Exec['patch_nova'] ~> Service<| title == 'nova-api' |> + Exec['patch_nova'] ~> Service<| title == 'nova-compute' |> + Exec['patch_nova'] ~> Service<| title == 'nova-network' |> + }