From: Michael Tremer Date: Thu, 20 Apr 2023 19:20:35 +0000 (+0000) Subject: backend: Store file capabilities X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6ec4ac44329f3279100d9c470661340d8e8c64af;p=pbs.git backend: Store file capabilities Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/packages.py b/src/buildservice/packages.py index 059f9d6c..d849acc9 100644 --- a/src/buildservice/packages.py +++ b/src/buildservice/packages.py @@ -431,8 +431,6 @@ class Package(base.DataObject): def _import_filelist(self, filelist): log.debug("Importing filelist for %s" % self) - # XXX capabilities - self.db.executemany(""" INSERT INTO package_files @@ -451,11 +449,12 @@ class Package(base.DataObject): digest_blake2b512, digest_blake2s256, digest_sha3_512, - digest_sha3_256 + digest_sha3_256, + capabilities ) VALUES ( - %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s + %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s )""", (( self.id, @@ -473,6 +472,7 @@ class Package(base.DataObject): file.digest("blake2s256"), file.digest("sha3-512"), file.digest("sha3-256"), + file.capabilities, ) for file in filelist), ) @@ -599,7 +599,10 @@ class File(base.Object): @property def capabilities(self): - return self.data.capabilities + try: + return self.data.capabilities.split() + except AttributeError: + return [] # Digest SHA512 diff --git a/src/database.sql b/src/database.sql index 0af4f78f..49a53b9d 100644 --- a/src/database.sql +++ b/src/database.sql @@ -704,7 +704,6 @@ CREATE TABLE public.package_files ( mode integer NOT NULL, uname text NOT NULL, gname text NOT NULL, - capabilities text, ctime timestamp without time zone NOT NULL, mtime timestamp without time zone NOT NULL, digest_sha2_512 bytea, @@ -713,7 +712,8 @@ CREATE TABLE public.package_files ( digest_blake2s256 bytea, digest_sha3_512 bytea, digest_sha3_256 bytea, - mimetype text + mimetype text, + capabilities text[] DEFAULT ARRAY[]::text[] NOT NULL );