Commit 814b46d
committed
Common Notifications bus interface for services
Add a top level field in OpenStackControlPlaneSpec field that holds a
strusture with an enablement flag and a RabbitMQ cluster CR name ref to
be used with notifications in the managed OpenStack instance.
Allow overriding it in OpenStack services templates, or disabling
notifications for all of them at the top level.
Note about a special handling expected for an empty value by the services
that will be supporting this interface. It should provide backwards
compatibility during oscp and services CRDs upgrades.
The proposed CRD design is expandable into supporting additional
messaging backends (provided via direct transport_url secret refs, or
the like).
Assume openstack-operator controller should implement a basic
inheritance mechanism from the top level field to the Nova service
(as a 1st implementation step example) based on the following rules:
if OpenStackControlPlaneSpec.NotificationsBus.RabbitMQCluster is not nil then
NovaSpec.NotificationsBusInstance := \
OpenStackControlPlaneSpec.NotificationsBus.RabbitMQCluster
if OpenStackControlPlaneSpec.NotificationsBus.RabbitMQCluster == "" then
force disable notifications for services
else
NovaSpec.NotificationsBusInstance := \
NovaSpecScore.NotificationsBusInstance or nil
We leave further handling of empty values for the services specific
implementation.
Assume a similar pattern to be applied later for
KeystoneAPI.Spec.RabbitMqClusterName and other services that need to
consume or publish notifications to keep things consistent accross the
board..
Signed-off-by: Bohdan Dobrelia <bdobreli@redhat.com>1 parent 1ec2176 commit 814b46d
5 files changed
Lines changed: 58 additions & 1 deletion
File tree
- apis
- bases
- core/v1beta1
- bindata/crds
- config/crd/bases
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9015 | 9015 | | |
9016 | 9016 | | |
9017 | 9017 | | |
| 9018 | + | |
| 9019 | + | |
| 9020 | + | |
| 9021 | + | |
| 9022 | + | |
9018 | 9023 | | |
9019 | 9024 | | |
9020 | 9025 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
126 | 126 | | |
127 | 127 | | |
128 | 128 | | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
129 | 134 | | |
130 | 135 | | |
131 | 136 | | |
| |||
484 | 489 | | |
485 | 490 | | |
486 | 491 | | |
487 | | - | |
| 492 | + | |
488 | 493 | | |
489 | 494 | | |
490 | 495 | | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
491 | 512 | | |
492 | 513 | | |
493 | 514 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9179 | 9179 | | |
9180 | 9180 | | |
9181 | 9181 | | |
| 9182 | + | |
| 9183 | + | |
| 9184 | + | |
| 9185 | + | |
| 9186 | + | |
9182 | 9187 | | |
9183 | 9188 | | |
9184 | 9189 | | |
| |||
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9015 | 9015 | | |
9016 | 9016 | | |
9017 | 9017 | | |
| 9018 | + | |
| 9019 | + | |
| 9020 | + | |
| 9021 | + | |
| 9022 | + | |
9018 | 9023 | | |
9019 | 9024 | | |
9020 | 9025 | | |
| |||
0 commit comments