From cdac238f9a2d350ecac39a74f8a089d4072e83b4 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Mon, 24 Nov 2025 14:39:12 +0900 Subject: [PATCH] Centralize oslo.service patching Move the patching logic to __init__ which is loaded automatically. This allows us to reduce number of noqa: E402 in each entrypoint files. Also drop override of OSKEN_HUB_TYPE, because os-ken uses native hub type by default since 4.0.0 . Change-Id: If7510e4210e7a5fe549163970e501b0cf9766058 Signed-off-by: Takashi Kajinami --- neutron/cmd/agents/__init__.py | 17 +++++++++++++++++ neutron/cmd/agents/dhcp.py | 10 +++------- neutron/cmd/agents/l3.py | 11 +++-------- neutron/cmd/agents/metadata.py | 11 +++-------- neutron/cmd/agents/ovn_metadata.py | 11 +++-------- neutron/cmd/agents/ovn_neutron_agent.py | 14 ++++---------- neutron/cmd/agents/ovs_neutron_agent.py | 19 +++---------------- neutron/cmd/plugins/__init__.py | 19 +++++++++++++++++++ neutron/cmd/plugins/macvtap_neutron_agent.py | 13 ++++--------- neutron/cmd/services/__init__.py | 17 +++++++++++++++++ neutron/cmd/services/metering_agent.py | 11 +++-------- 11 files changed, 79 insertions(+), 74 deletions(-) diff --git a/neutron/cmd/agents/__init__.py b/neutron/cmd/agents/__init__.py index e69de29bb2d..21aea923aae 100644 --- a/neutron/cmd/agents/__init__.py +++ b/neutron/cmd/agents/__init__.py @@ -0,0 +1,17 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from oslo_service import backend as oslo_service_backend + + +# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` +oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) diff --git a/neutron/cmd/agents/dhcp.py b/neutron/cmd/agents/dhcp.py index 8c361f8765f..38536f147d0 100644 --- a/neutron/cmd/agents/dhcp.py +++ b/neutron/cmd/agents/dhcp.py @@ -10,14 +10,10 @@ # License for the specific language governing permissions and limitations # under the License. -from oslo_service import backend -backend.init_backend(backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron.agent import dhcp_agent # noqa: E402 -from neutron_lib import constants # noqa: E402 +from neutron.agent import dhcp_agent +from neutron_lib import constants def main(): diff --git a/neutron/cmd/agents/l3.py b/neutron/cmd/agents/l3.py index 257bb97a6d2..5d46d771ae1 100644 --- a/neutron/cmd/agents/l3.py +++ b/neutron/cmd/agents/l3.py @@ -10,15 +10,10 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron.agent import l3_agent # noqa: E402 -from neutron_lib import constants # noqa: E402 +from neutron.agent import l3_agent +from neutron_lib import constants def main(): diff --git a/neutron/cmd/agents/metadata.py b/neutron/cmd/agents/metadata.py index 5c363220102..de3d89f7375 100644 --- a/neutron/cmd/agents/metadata.py +++ b/neutron/cmd/agents/metadata.py @@ -10,15 +10,10 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(haleyb): remove once the default backend is ``BackendType.THREADING`` -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron.agent import metadata_agent # noqa: E402 -from neutron_lib import constants # noqa: E402 +from neutron.agent import metadata_agent +from neutron_lib import constants def main(): diff --git a/neutron/cmd/agents/ovn_metadata.py b/neutron/cmd/agents/ovn_metadata.py index 35f24dd76e4..f5ce15da9f9 100644 --- a/neutron/cmd/agents/ovn_metadata.py +++ b/neutron/cmd/agents/ovn_metadata.py @@ -10,15 +10,10 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(haleyb): remove once the default backend is ``BackendType.THREADING`` -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron.agent.ovn import metadata_agent # noqa: E402 -from neutron_lib import constants # noqa: E402 +from neutron.agent.ovn import metadata_agent +from neutron_lib import constants def main(): diff --git a/neutron/cmd/agents/ovn_neutron_agent.py b/neutron/cmd/agents/ovn_neutron_agent.py index 1fcb73c6a25..db184df9261 100644 --- a/neutron/cmd/agents/ovn_neutron_agent.py +++ b/neutron/cmd/agents/ovn_neutron_agent.py @@ -10,20 +10,14 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(haleyb): remove once the default backend is ``BackendType.THREADING`` -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron_lib import constants as lib_constants # noqa: E402 - -from neutron.agent.ovn import ovn_neutron_agent # noqa: E402 +from neutron.agent.ovn import ovn_neutron_agent +from neutron_lib import constants def main(): - proctitle = "{} ({})".format(lib_constants.AGENT_PROCESS_OVN, + proctitle = "{} ({})".format(constants.AGENT_PROCESS_OVN, setproctitle.getproctitle()) setproctitle.setproctitle(proctitle) ovn_neutron_agent.main() diff --git a/neutron/cmd/agents/ovs_neutron_agent.py b/neutron/cmd/agents/ovs_neutron_agent.py index 53bffd5ff96..81ab9956f20 100644 --- a/neutron/cmd/agents/ovs_neutron_agent.py +++ b/neutron/cmd/agents/ovs_neutron_agent.py @@ -13,23 +13,10 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` -import os +import setproctitle -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) - -# NOTE: the environment variable "OSKEN_HUB_TYPE" defines the ``os-ken`` -# hub type to be used. The default value is now "eventlet". Once the -# default value is set to "native", we will remove the following line. -os.environ['OSKEN_HUB_TYPE'] = 'native' - - -# pylint: disable=wrong-import-position, line-too-long -import setproctitle # noqa: E402 - -import neutron.plugins.ml2.drivers.openvswitch.agent.main as agent_main # noqa: E402,E501 -from neutron_lib import constants # noqa: E402 +import neutron.plugins.ml2.drivers.openvswitch.agent.main as agent_main +from neutron_lib import constants def main(): diff --git a/neutron/cmd/plugins/__init__.py b/neutron/cmd/plugins/__init__.py index e69de29bb2d..2c494ff0ed4 100644 --- a/neutron/cmd/plugins/__init__.py +++ b/neutron/cmd/plugins/__init__.py @@ -0,0 +1,19 @@ +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` +from oslo_service import backend as oslo_service_backend + + +oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) diff --git a/neutron/cmd/plugins/macvtap_neutron_agent.py b/neutron/cmd/plugins/macvtap_neutron_agent.py index 79d0e7cf6c7..c5a98a40a36 100644 --- a/neutron/cmd/plugins/macvtap_neutron_agent.py +++ b/neutron/cmd/plugins/macvtap_neutron_agent.py @@ -12,16 +12,11 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron.plugins.ml2.drivers.macvtap.agent import ( # noqa: E402 - macvtap_neutron_agent as agent_main) -from neutron_lib import constants # noqa: E402 +from neutron.plugins.ml2.drivers.macvtap.agent import macvtap_neutron_agent \ + as agent_main +from neutron_lib import constants def main(): diff --git a/neutron/cmd/services/__init__.py b/neutron/cmd/services/__init__.py index e69de29bb2d..c223e614fde 100644 --- a/neutron/cmd/services/__init__.py +++ b/neutron/cmd/services/__init__.py @@ -0,0 +1,17 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` +from oslo_service import backend as oslo_service_backend + + +oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) diff --git a/neutron/cmd/services/metering_agent.py b/neutron/cmd/services/metering_agent.py index 977442a59c1..33b0ff7139a 100644 --- a/neutron/cmd/services/metering_agent.py +++ b/neutron/cmd/services/metering_agent.py @@ -10,15 +10,10 @@ # License for the specific language governing permissions and limitations # under the License. -# NOTE(ralonsoh): remove once the default backend is ``BackendType.THREADING`` -from oslo_service import backend as oslo_service_backend -oslo_service_backend.init_backend(oslo_service_backend.BackendType.THREADING) +import setproctitle -# pylint: disable=wrong-import-position -import setproctitle # noqa: E402 - -from neutron.services.metering.agents import metering_agent # noqa: E402 -from neutron_lib import constants # noqa: E402 +from neutron.services.metering.agents import metering_agent +from neutron_lib import constants def main():