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

Reply via email to