From: Michael Tremer Date: Tue, 22 Feb 2011 16:33:28 +0000 (+0100) Subject: Add triggers to local package database. X-Git-Tag: 0.9.3~144 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9c75e8ed1948186d0cab4b6c57cc4e9c1716cc88;p=pakfire.git Add triggers to local package database. --- diff --git a/pakfire/database.py b/pakfire/database.py index 8f68c95a3..cf1a8ebca 100644 --- a/pakfire/database.py +++ b/pakfire/database.py @@ -216,6 +216,7 @@ class LocalPackageDatabase(RemotePackageDatabase): ALTER TABLE packages ADD COLUMN reason TEXT; ALTER TABLE packages ADD COLUMN repository TEXT; ALTER TABLE packages ADD COLUMN scriptlet TEXT; + ALTER TABLE packages ADD COLUMN triggers TEXT; """) self.commit() c.close() @@ -243,5 +244,9 @@ class LocalPackageDatabase(RemotePackageDatabase): # Add the scriptlet to database (needed to update or uninstall packages). c.execute("UPDATE packages SET scriptlet = ? WHERE id = ?", (pkg.scriptlet, pkg_id)) + # Add triggers to the database. + triggers = " ".join(pkg.triggers) + c.execute("UPDATE packages SET triggers = ? WHERE id = ?", (triggers, pkg_id)) + self.commit() c.close() diff --git a/pakfire/packages/base.py b/pakfire/packages/base.py index 60abf9d2b..7159cb20b 100644 --- a/pakfire/packages/base.py +++ b/pakfire/packages/base.py @@ -190,6 +190,12 @@ class Package(object): def url(self): return self.metadata.get("PKG_URL") + @property + def triggers(self): + triggers = self.metadata.get("PKG_TRIGGERS", "") + + return triggers.split() + @property def signature(self): raise NotImplementedError