Yedidyah Bar David has uploaded a new change for review. Change subject: packaging: setup: config engine to access reports ......................................................................
packaging: setup: config engine to access reports Instead of updating vdc_options as was done before, write a conf file on the engine side that will let the engine access reports. Change-Id: I4b7ea55fc0c8204a88edf39c055c2bb2d53d6dde Bug-Url: https://bugzilla.redhat.com/1144079 Signed-off-by: Yedidyah Bar David <d...@redhat.com> --- M packaging/setup/ovirt_engine_setup/reports/constants.py M packaging/setup/plugins/ovirt-engine-common/ovirt-engine-reports/db/connection.py M packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/config/engine.py M packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/db/connection.py 4 files changed, 43 insertions(+), 178 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-reports refs/changes/48/33148/1 diff --git a/packaging/setup/ovirt_engine_setup/reports/constants.py b/packaging/setup/ovirt_engine_setup/reports/constants.py index b691e66..58022ff 100644 --- a/packaging/setup/ovirt_engine_setup/reports/constants.py +++ b/packaging/setup/ovirt_engine_setup/reports/constants.py @@ -105,34 +105,6 @@ 'database': DWHDefaults.DEFAULT_DB_DATABASE, } - @classproperty - def ENGINE_DB_ENV_KEYS(self): - return { - 'host': EngineDBEnv.HOST, - 'port': EngineDBEnv.PORT, - 'secured': EngineDBEnv.SECURED, - 'hostValidation': EngineDBEnv.SECURED_HOST_VALIDATION, - 'user': EngineDBEnv.USER, - 'password': EngineDBEnv.PASSWORD, - 'database': EngineDBEnv.DATABASE, - 'connection': EngineDBEnv.CONNECTION, - 'pgpassfile': EngineDBEnv.PGPASS_FILE, - 'newDatabase': EngineDBEnv.NEW_DATABASE, - } - - @classproperty - def DEFAULT_ENGINE_DB_ENV_KEYS(self): - return { - 'host': EngineDefaults.DEFAULT_DB_HOST, - 'port': EngineDefaults.DEFAULT_DB_PORT, - 'secured': EngineDefaults.DEFAULT_DB_SECURED, - 'hostValidation': - EngineDefaults.DEFAULT_DB_SECURED_HOST_VALIDATION, - 'user': EngineDefaults.DEFAULT_DB_USER, - 'password': EngineDefaults.DEFAULT_DB_PASSWORD, - 'database': EngineDefaults.DEFAULT_DB_DATABASE, - } - @util.export @util.codegen @@ -161,18 +133,6 @@ DEFAULT_DB_PORT = 5432 DEFAULT_DB_DATABASE = 'ovirt_engine_history' DEFAULT_DB_USER = 'ovirt_engine_history' - DEFAULT_DB_PASSWORD = '' - DEFAULT_DB_SECURED = False - DEFAULT_DB_SECURED_HOST_VALIDATION = False - - -@util.export -@util.codegen -class EngineDefaults(object): - DEFAULT_DB_HOST = '' - DEFAULT_DB_PORT = 5432 - DEFAULT_DB_DATABASE = 'engine' - DEFAULT_DB_USER = 'engine' DEFAULT_DB_PASSWORD = '' DEFAULT_DB_SECURED = False DEFAULT_DB_SECURED_HOST_VALIDATION = False @@ -618,76 +578,26 @@ @util.export @util.codegen @osetupattrsclass -class EngineDBEnv(object): - """Sync with ovirt-engine""" - - @osetupattrs( - answerfile=True, - summary=True, - description=_('Engine database host'), - ) - def HOST(self): - return 'OVESETUP_DB/host' - - @osetupattrs( - answerfile=True, - summary=True, - description=_('Engine database port'), - ) - def PORT(self): - return 'OVESETUP_DB/port' - - @osetupattrs( - answerfile=True, - summary=True, - description=_('Engine database secured connection'), - ) - def SECURED(self): - return 'OVESETUP_DB/secured' - - @osetupattrs( - answerfile=True, - summary=True, - description=_('Engine database host name validation'), - ) - def SECURED_HOST_VALIDATION(self): - return 'OVESETUP_DB/securedHostValidation' - - @osetupattrs( - answerfile=True, - summary=True, - description=_('Engine database name'), - ) - def DATABASE(self): - return 'OVESETUP_DB/database' - - @osetupattrs( - answerfile=True, - summary=True, - description=_('Engine database user name'), - ) - def USER(self): - return 'OVESETUP_DB/user' - - @osetupattrs( - answerfile=True, - ) - def PASSWORD(self): - return 'OVESETUP_DB/password' - - CONNECTION = 'OVESETUP_DB/connection' - STATEMENT = 'OVESETUP_DB/statement' - PGPASS_FILE = 'OVESETUP_DB/pgPassFile' - NEW_DATABASE = 'OVESETUP_DB/newDatabase' - - -@util.export -@util.codegen -@osetupattrsclass class EngineCoreEnv(object): """Sync with ovirt-engine""" ENABLE = 'OVESETUP_ENGINE_CORE/enable' +@util.export +@util.codegen +class EngineFileLocations(object): + """Sync with ovirt-engine""" + + OVIRT_ENGINE_SERVICE_CONFIGD = os.path.join( + SYSCONFDIR, + 'ovirt-engine', + 'engine.conf.d' + ) + OVIRT_ENGINE_SERVICE_CONFIG_REPORTS = os.path.join( + OVIRT_ENGINE_SERVICE_CONFIGD, + '10-setup-reports-access.conf' + ) + + # vim: expandtab tabstop=4 shiftwidth=4 diff --git a/packaging/setup/plugins/ovirt-engine-common/ovirt-engine-reports/db/connection.py b/packaging/setup/plugins/ovirt-engine-common/ovirt-engine-reports/db/connection.py index d9e74fe..01130bc 100644 --- a/packaging/setup/plugins/ovirt-engine-common/ovirt-engine-reports/db/connection.py +++ b/packaging/setup/plugins/ovirt-engine-common/ovirt-engine-reports/db/connection.py @@ -57,11 +57,6 @@ ].append( oreportscons.DWHDBEnv.PASSWORD ) - self.environment[ - otopicons.CoreEnv.LOG_FILTER_KEYS - ].append( - oreportscons.EngineDBEnv.PASSWORD - ) @plugin.event( stage=plugin.Stages.STAGE_INIT, @@ -99,39 +94,6 @@ self.environment[oreportscons.DBEnv.CONNECTION] = None self.environment[oreportscons.DBEnv.STATEMENT] = None self.environment[oreportscons.DBEnv.NEW_DATABASE] = True - - self.environment.setdefault( - oreportscons.EngineDBEnv.HOST, - None - ) - self.environment.setdefault( - oreportscons.EngineDBEnv.PORT, - None - ) - self.environment.setdefault( - oreportscons.EngineDBEnv.SECURED, - None - ) - self.environment.setdefault( - oreportscons.EngineDBEnv.SECURED_HOST_VALIDATION, - None - ) - self.environment.setdefault( - oreportscons.EngineDBEnv.USER, - None - ) - self.environment.setdefault( - oreportscons.EngineDBEnv.PASSWORD, - None - ) - self.environment.setdefault( - oreportscons.EngineDBEnv.DATABASE, - None - ) - - self.environment[oreportscons.EngineDBEnv.CONNECTION] = None - self.environment[oreportscons.EngineDBEnv.STATEMENT] = None - self.environment[oreportscons.EngineDBEnv.NEW_DATABASE] = True self.environment.setdefault( oreportscons.DWHDBEnv.HOST, diff --git a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/config/engine.py b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/config/engine.py index 148cd89..4b3c6cf 100644 --- a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/config/engine.py +++ b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/config/engine.py @@ -74,32 +74,35 @@ ) ) - statement = database.Statement( - dbenvkeys=oreportscons.Const.ENGINE_DB_ENV_KEYS, - environment=self.environment, + reports_conf_content = ( + 'ENGINE_REPORTS_BASE_URL=' + 'https://{fqdn}/ovirt-engine-reports\n' + 'ENGINE_REPORTS_DASHBOARD_URL=' + '${ENGINE_REPORTS_BASE_URL}' + '/flow.html?_flowId=viewReportFlow' + 'ENGINE_REPORTS_PROXY_URL=' + '${ENGINE_REPORTS_BASE_URL}/ovirt/reports-interface\n' + 'ENGINE_REPORTS_VERIFY_HOST=true\n' + 'ENGINE_REPORTS_VERIFY_CHAIN=true\n' + 'ENGINE_REPORTS_READ_TIMEOUT=\n' + ).format( + fqdn=self.environment[osetupcons.ConfigEnv.FQDN], ) - statement.execute( - statement=""" - update vdc_options - set - option_value=%(value)s - where - option_name=%(name)s and - version=%(version)s - """, - args=dict( - name='RedirectServletReportsPage', - value='https://{fqdn}:{port}/ovirt-engine-reports'.format( - fqdn=self.environment[osetupcons.ConfigEnv.FQDN], - port=self.environment[ - oreportscons.ConfigEnv.PUBLIC_HTTPS_PORT + if self.environment[oreportscons.EngineCoreEnv.ENABLE]: + self.environment[otopicons.CoreEnv.MAIN_TRANSACTION].append( + filetransaction.FileTransaction( + name=oreportscons.EngineFileLocations + OVIRT_ENGINE_SERVICE_CONFIG_REPORTS, + content=reports_conf_content, + modifiedList=self.environment[ + otopicons.CoreEnv.MODIFIED_FILES ], - ), - version='general', - ), - ownConnection=True, - ) + ) + ) + else: + # TODO instruct user to do this manually or using ssh as root + pass @plugin.event( stage=plugin.Stages.STAGE_CLOSEUP, diff --git a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/db/connection.py b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/db/connection.py index 3182029..becb2ed 100644 --- a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/db/connection.py +++ b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/db/connection.py @@ -111,17 +111,7 @@ oengcommcons.Stages.DB_OWNERS_CONNECTIONS_CUSTOMIZED, ), ) - def _engine_and_dwh_customization(self): - database.OvirtUtils( - plugin=self, - dbenvkeys=oreportscons.Const.ENGINE_DB_ENV_KEYS, - ).getCredentials( - name='Engine', - queryprefix='OVESETUP_ENGINE_DB_', - defaultdbenvkeys=oreportscons.Const.DEFAULT_ENGINE_DB_ENV_KEYS, - show_create_msg=False, - ) - + def _dwh_customization(self): database.OvirtUtils( plugin=self, dbenvkeys=oreportscons.Const.DWH_DB_ENV_KEYS, -- To view, visit http://gerrit.ovirt.org/33148 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I4b7ea55fc0c8204a88edf39c055c2bb2d53d6dde Gerrit-PatchSet: 1 Gerrit-Project: ovirt-reports Gerrit-Branch: master Gerrit-Owner: Yedidyah Bar David <d...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches