From 201fda5f5d6d27a647a3902b87f718d92cbe9ab0 Mon Sep 17 00:00:00 2001 From: Douglas Viroel Date: Wed, 21 Jan 2026 15:46:24 -0300 Subject: [PATCH] Deprecate MAAS integration This integration was previously set as experimental due to lack of testing, maintenance and documentation[1]. It is now being deprecated since it has eventlet code that cannot be updated without a proper test environment and some background knowledge on how it should work. The removal of the code should happen before or together with the removal of all other eventlet imports. Change-Id: If5ac5e075275931e6e4024653ecd8043aca5d032 Signed-off-by: Douglas Viroel --- doc/source/integrations/index.rst | 5 ++--- .../notes/deprecate-maas-9dfbb7975d379231.yaml | 8 ++++++++ watcher/common/clients.py | 11 +++++------ 3 files changed, 15 insertions(+), 9 deletions(-) create mode 100644 releasenotes/notes/deprecate-maas-9dfbb7975d379231.yaml diff --git a/doc/source/integrations/index.rst b/doc/source/integrations/index.rst index f48bc76bb..1462a9798 100644 --- a/doc/source/integrations/index.rst +++ b/doc/source/integrations/index.rst @@ -35,7 +35,7 @@ Integration Status Matrix - Minimal - Integration * - :ref:`MAAS ` - - Experimental + - Deprecated - Missing - Unit * - :ref:`Neutron ` @@ -95,8 +95,7 @@ MAAS (Metal As A Service) ^^^^^^^^^^^^^^^^^^^^^^^^^ This integration allows managing bare metal servers of a MAAS service, which includes Actions that manage the power state of nodes. This -integration is classified as Experimental and may be removed in future -releases. +integration is deprecated and will be removed in a future release. .. _neutron_integration: diff --git a/releasenotes/notes/deprecate-maas-9dfbb7975d379231.yaml b/releasenotes/notes/deprecate-maas-9dfbb7975d379231.yaml new file mode 100644 index 000000000..8006199bb --- /dev/null +++ b/releasenotes/notes/deprecate-maas-9dfbb7975d379231.yaml @@ -0,0 +1,8 @@ +--- +deprecations: + - | + The MAAS (Metal as a Service) integration is now deprecated. This feature + was previously marked as experimental due to lack of testing, maintenance, + and documentation. The MAAS integration code is planned to be removed in + a future release, before or together with the removal of eventlet from + Watcher. diff --git a/watcher/common/clients.py b/watcher/common/clients.py index 3eedc806e..aa9885a20 100644 --- a/watcher/common/clients.py +++ b/watcher/common/clients.py @@ -235,13 +235,12 @@ class OpenStackClients: if self._maas: return self._maas - # NOTE(dviroel): This integration is classified as Experimental due to - # the lack of documentation and CI testing. It can be marked as - # supported or deprecated in future releases, based on improvements. + # NOTE(dviroel): This integration is deprecated due to the lack of + # maintenance and support. It has eventlet code that is required to be + # removed/replaced in future releases. debtcollector.deprecate( - ("MAAS is an experimental integration and may be " - "deprecated in future releases."), - version="2025.2", category=PendingDeprecationWarning) + ("MAAS integration is deprecated and it will be removed in a " + "future release."), version="2026.1", category=DeprecationWarning) if not maas_client: raise exception.UnsupportedError(