File: Add-queue_manager-and-stream_fanout.patch

package info (click to toggle)
puppet-module-cinder 25.0.0-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 2,492 kB
  • sloc: ruby: 6,690; python: 38; makefile: 10; sh: 10
file content (93 lines) | stat: -rw-r--r-- 4,391 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
From a1bfb682db5276d4f86ef7760f1b8a754016c50c Mon Sep 17 00:00:00 2001
From: Thomas Goirand <zigo@debian.org>
Date: Fri, 20 Jun 2025 23:36:24 +0200
Subject: [PATCH] Add queue_manager and stream_fanout

This patch adds two new parameters to the toplevel class:
- rabbit_use_queue_manager
- rabbit_stream_fanout

that are already handled by the oslo::messaging::rabbit class, which
makes it impossible to set using cinder_config.

Change-Id: I6b4d11735b4da346dc9226972dc2d24a2ab9347f
---

Index: puppet-module-cinder/manifests/init.pp
===================================================================
--- puppet-module-cinder.orig/manifests/init.pp
+++ puppet-module-cinder/manifests/init.pp
@@ -108,6 +108,14 @@
 #   (Optional) Limit the number of memory bytes used by the quorum queue.
 #   Defaults to $facts['os_service_default']
 #
+# [*rabbit_use_queue_manager*]
+#   (Optional) Should we use consistant queue names or random ones.
+#   Defaults to $facts['os_service_default']
+#
+# [*rabbit_stream_fanout*]
+#   (Optional) Use stream queues in RabbitMQ (x-queue-type: stream).
+#   Defaults to $facts['os_service_default']
+#
 # [*rabbit_enable_cancel_on_failover*]
 #   (Optional) Enable x-cancel-on-ha-failover flag so that rabbitmq server will
 #   cancel and notify consumers when queue is down.
@@ -266,6 +274,8 @@ class cinder (
   $rabbit_quorum_delivery_limit         = $facts['os_service_default'],
   $rabbit_quorum_max_memory_length      = $facts['os_service_default'],
   $rabbit_quorum_max_memory_bytes       = $facts['os_service_default'],
+  $rabbit_use_queue_manager             = $facts['os_service_default'],
+  $rabbit_stream_fanout                 = $facts['os_service_default'],
   $rabbit_enable_cancel_on_failover     = $facts['os_service_default'],
   $rabbit_use_ssl                       = $facts['os_service_default'],
   $service_down_time                    = $facts['os_service_default'],
@@ -333,6 +343,8 @@ class cinder (
     rabbit_quorum_delivery_limit    => $rabbit_quorum_delivery_limit,
     rabbit_quorum_max_memory_length => $rabbit_quorum_max_memory_length,
     rabbit_quorum_max_memory_bytes  => $rabbit_quorum_max_memory_bytes,
+    use_queue_manager               => $rabbit_use_queue_manager,
+    rabbit_stream_fanout            => $rabbit_stream_fanout,
     enable_cancel_on_failover       => $rabbit_enable_cancel_on_failover,
   }
 
Index: puppet-module-cinder/releasenotes/notes/queue_manager-and-stream_fanout-7c471cc2f1aebc93.yaml
===================================================================
--- /dev/null
+++ puppet-module-cinder/releasenotes/notes/queue_manager-and-stream_fanout-7c471cc2f1aebc93.yaml
@@ -0,0 +1,5 @@
+---
+features:
+  - |
+    The ``cinder`` class now has two new parameters
+    ``rabbit_use_queue_manager`` and ``rabbit_stream_fanout``.
Index: puppet-module-cinder/spec/classes/cinder_init_spec.rb
===================================================================
--- puppet-module-cinder.orig/spec/classes/cinder_init_spec.rb
+++ puppet-module-cinder/spec/classes/cinder_init_spec.rb
@@ -47,6 +47,8 @@ describe 'cinder' do
           :rabbit_quorum_delivery_limit    => '<SERVICE DEFAULT>',
           :rabbit_quorum_max_memory_length => '<SERVICE DEFAULT>',
           :rabbit_quorum_max_memory_bytes  => '<SERVICE DEFAULT>',
+          :use_queue_manager               => '<SERVICE DEFAULT>',
+          :rabbit_stream_fanout            => '<SERVICE DEFAULT>',
           :enable_cancel_on_failover       => '<SERVICE DEFAULT>',
         )
         is_expected.to contain_oslo__messaging__notifications('cinder_config').with(
@@ -108,6 +110,8 @@ describe 'cinder' do
           :rabbit_quorum_delivery_limit       => 3,
           :rabbit_quorum_max_memory_length    => 5,
           :rabbit_quorum_max_memory_bytes     => 1073741824,
+          :rabbit_use_queue_manager           => true,
+          :rabbit_stream_fanout               => true,
           :rabbit_enable_cancel_on_failover   => false,
         )
       end
@@ -123,6 +127,8 @@ describe 'cinder' do
         :rabbit_quorum_delivery_limit    => 3,
         :rabbit_quorum_max_memory_length => 5,
         :rabbit_quorum_max_memory_bytes  => 1073741824,
+        :use_queue_manager               => true,
+        :rabbit_stream_fanout            => true,
         :enable_cancel_on_failover       => false,
       ) }
     end