Yedidyah Bar David has uploaded a new change for review.

Change subject: packaging: setup: Prepare for deploy
......................................................................

packaging: setup: Prepare for deploy

If we do not find the table JIDashboardModel, run an upgrade script
from jasperreports to create it.

Change-Id: I48e90921c3db174d5437c6c6167dabdf2b53cae0
Bug-Url: https://bugzilla.redhat.com/1212306
Signed-off-by: Yedidyah Bar David <[email protected]>
---
M 
packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/jasper/deploy.py
1 file changed, 38 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-reports refs/changes/95/40395/1

diff --git 
a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/jasper/deploy.py
 
b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/jasper/deploy.py
index 39643b9..760e8d9 100644
--- 
a/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/jasper/deploy.py
+++ 
b/packaging/setup/plugins/ovirt-engine-setup/ovirt-engine-reports/jasper/deploy.py
@@ -434,6 +434,42 @@
                 )
             )
 
+    def _prepare_db_for_export(self):
+        # Under certain conditions, jasper 6.0 requires some changes to the db
+        # before exporting data from it, if it was set up with 5.6.
+        # TODO Make this more general if at all. Consider exporting before
+        # doing the actual upgrade.
+
+        if (
+            self.environment[oreportscons.JasperEnv.JASPER_NAME] == 'pro'
+        ):
+            try:
+                database.Statement(
+                    dbenvkeys=oreportscons.Const.REPORTS_DB_ENV_KEYS,
+                    environment=self.environment,
+                ).execute(
+                    statement="SELECT count(*) from JIDashboardModel",
+                    ownConnection=True,
+                    transaction=False,
+                )
+            except:
+                # Table not found, run an upgrade script to create it
+                database.OvirtUtils(
+                    plugin=self,
+                    dbenvkeys=oreportscons.Const.REPORTS_DB_ENV_KEYS,
+                ).runSqlFile(
+                    os.path.join(
+                        self.environment[
+                            oreportscons.ConfigEnv.JASPER_HOME
+                        ],
+                        'buildomatic',
+                        'install_resources',
+                        'sql',
+                        'postgresql',
+                        'upgrade-postgresql-5.6.0-6.0.0-pro.sql'
+                    )
+                )
+
     def __init__(self, context):
         super(Plugin, self).__init__(context=context)
         self._oreportsutil = None
@@ -600,6 +636,8 @@
 
         self._buildJs(config=config, cmd='gen-config', noSuffix=True)
 
+        self._prepare_db_for_export()
+
         self.logger.info(_('Exporting data out of Jasper'))
 
         if (


-- 
To view, visit https://gerrit.ovirt.org/40395
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I48e90921c3db174d5437c6c6167dabdf2b53cae0
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-reports
Gerrit-Branch: master
Gerrit-Owner: Yedidyah Bar David <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to