From 598d97e66bce85160bbff4a1be5746667b794c42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ne=C4=8Das?= Date: Mon, 11 Apr 2022 20:44:51 +0200 Subject: [PATCH 1/3] engine_setup: cleanup after ARS removal --- .../ovirt_engine_setup/engine/constants.py | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/packaging/setup/ovirt_engine_setup/engine/constants.py b/packaging/setup/ovirt_engine_setup/engine/constants.py index c62ece232d2..b7c5d7bb711 100644 --- a/packaging/setup/ovirt_engine_setup/engine/constants.py +++ b/packaging/setup/ovirt_engine_setup/engine/constants.py @@ -234,22 +234,6 @@ class FileLocations(object): 'nssdb', ) - ANSIBLE_RUNNER_SERVICE_CONF = os.path.join( - SYSCONFDIR, - 'ansible-runner-service', - 'config.yaml', - ) - - ANSIBLE_RUNNER_SERVICE_PROJECT = os.path.join( - OVIRT_ENGINE_DATADIR, - 'ansible-runner-service-project', - ) - - ANSIBLE_RUNNER_PROJECT = os.path.join( - OVIRT_ENGINE_LOCALSTATEDIR, - 'ansible-runner-project', - ) - DIR_HTTPD = os.path.join( SYSCONFDIR, 'httpd', @@ -266,12 +250,6 @@ class FileLocations(object): 'runner.wsgi', ) - HTTPD_CONF_ANSIBLE_RUNNER_SERVICE = os.path.join( - DIR_HTTPD, - 'conf.d', - 'zz-ansible-runner-service.conf', - ) - HTTPD_CONF_OVIRT_ENGINE = os.path.join( DIR_HTTPD, 'conf.d', From fa4b1a1658c3444b3ccf44ce64cc88794a02615d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ne=C4=8Das?= Date: Thu, 14 Apr 2022 10:35:38 +0200 Subject: [PATCH 2/3] Cleanup ARS httpd config --- .../ovirt_engine_setup/engine/constants.py | 10 +-- .../ovirt-engine/apache/__init__.py | 2 + .../ovirt-engine/apache/runner.py | 86 +++++++++++++++++++ 3 files changed, 92 insertions(+), 6 deletions(-) create mode 100644 packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py diff --git a/packaging/setup/ovirt_engine_setup/engine/constants.py b/packaging/setup/ovirt_engine_setup/engine/constants.py index b7c5d7bb711..8e785560e81 100644 --- a/packaging/setup/ovirt_engine_setup/engine/constants.py +++ b/packaging/setup/ovirt_engine_setup/engine/constants.py @@ -244,10 +244,10 @@ class FileLocations(object): 'www', ) - HTTPD_RUNNER_WSGI_SCRIPT = os.path.join( - DIR_WWW, - 'runnner', - 'runner.wsgi', + HTTPD_CONF_ANSIBLE_RUNNER_SERVICE = os.path.join( + DIR_HTTPD, + 'conf.d', + 'zz-ansible-runner-service.conf', ) HTTPD_CONF_OVIRT_ENGINE = os.path.join( @@ -345,8 +345,6 @@ class Defaults(object): DEFAULT_CLEAR_TASKS_WAIT_PERIOD = 20 - DEFAULT_ANSIBLE_RUNNER_SERVICE_PORT = '50001' - DEFAULT_DB_HOST = 'localhost' DEFAULT_DB_PORT = 5432 DEFAULT_DB_DATABASE = 'engine' diff --git a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py index b17530297e3..1fd19634873 100644 --- a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py +++ b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py @@ -14,12 +14,14 @@ from . import engine from . import root +from . import runner @util.export def createPlugins(context): engine.Plugin(context=context) root.Plugin(context=context) + runner.Plugin(context=context) # vim: expandtab tabstop=4 shiftwidth=4 diff --git a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py new file mode 100644 index 00000000000..2dc3c86ee28 --- /dev/null +++ b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py @@ -0,0 +1,86 @@ +# +# ovirt-engine-setup -- ovirt engine setup +# +# Copyright oVirt Authors +# SPDX-License-Identifier: Apache-2.0 +# +# + + +"""Apache ansible-runner plugin.""" + + +import gettext +import os + +from otopi import constants as otopicons +from otopi import plugin +from otopi import util + +from ovirt_engine_setup import constants as osetupcons +from ovirt_engine_setup.engine import constants as oenginecons +from ovirt_engine_setup.engine_common import constants as oengcommcons +from ovirt_engine_setup.transactions import RemoveFileTransaction + + +def _(m): + return gettext.dgettext(message=m, domain='ovirt-engine-setup') + + +@util.export +class Plugin(plugin.PluginBase): + """Cleanup of the ansible-runner plugin.""" + + def __init__(self, context): + super(Plugin, self).__init__(context=context) + + @plugin.event( + stage=plugin.Stages.STAGE_MISC, + condition=lambda self: self.environment[ + oenginecons.CoreEnv.ENABLE + ] and not self.environment[ + osetupcons.CoreEnv.DEVELOPER_MODE + ] and os.path.exists( + oenginecons.FileLocations.HTTPD_CONF_ANSIBLE_RUNNER_SERVICE + ), + ) + def _misc(self): + if not self._can_remove( + oenginecons.FileLocations.HTTPD_CONF_ANSIBLE_RUNNER_SERVICE + ): + return + + self.environment[oengcommcons.ApacheEnv.NEED_RESTART] = True + + self.environment[otopicons.CoreEnv.MAIN_TRANSACTION].append( + RemoveFileTransaction( + oenginecons.FileLocations.HTTPD_CONF_ANSIBLE_RUNNER_SERVICE + ) + ) + + def _can_remove(self, installed_file): + """ + Return True if installed_file can be removed safely. Return False if + the file was not installed by previous setup, or was changed. + """ + uninstall_info = self.environment[ + osetupcons.CoreEnv.UNINSTALL_FILES_INFO + ].get(installed_file) + + # Did we install this file? + if not uninstall_info: + return False + + # Did it change since we installed it? + if uninstall_info.get("changed"): + self.logger.warn( + _( + "Cannot remove {}, file was changed" + ).format(installed_file) + ) + return False + + return True + + +# vim: expandtab tabstop=4 shiftwidth=4 From 5a7d123aa3d4dfe7505b80f2af304f83ca6e412e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ne=C4=8Das?= Date: Thu, 14 Apr 2022 23:18:45 +0200 Subject: [PATCH 3/3] Rename the python file --- .../ovirt-engine-setup/ovirt-engine/apache/__init__.py | 4 ++-- .../ovirt-engine/apache/{runner.py => ars_cleanup.py} | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) rename packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/{runner.py => ars_cleanup.py} (95%) diff --git a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py index 1fd19634873..bc42835c6de 100644 --- a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py +++ b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/__init__.py @@ -12,16 +12,16 @@ from otopi import util +from . import ars_cleanup from . import engine from . import root -from . import runner @util.export def createPlugins(context): engine.Plugin(context=context) root.Plugin(context=context) - runner.Plugin(context=context) + ars_cleanup.Plugin(context=context) # vim: expandtab tabstop=4 shiftwidth=4 diff --git a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/ars_cleanup.py similarity index 95% rename from packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py rename to packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/ars_cleanup.py index 2dc3c86ee28..9266123127c 100644 --- a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/runner.py +++ b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine/apache/ars_cleanup.py @@ -7,7 +7,7 @@ # -"""Apache ansible-runner plugin.""" +"""Apache ansible-runner-service cleanup plugin.""" import gettext @@ -29,7 +29,7 @@ def _(m): @util.export class Plugin(plugin.PluginBase): - """Cleanup of the ansible-runner plugin.""" + """Apache ansible-runner-service cleanup plugin.""" def __init__(self, context): super(Plugin, self).__init__(context=context)