mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
feat(PHP): Add packages dump file with more metadata
This commit is contained in:
parent
10fcf93991
commit
f606140050
4 changed files with 13 additions and 0 deletions
|
@ -2,11 +2,13 @@
|
|||
|
||||
import datetime
|
||||
import gzip
|
||||
import json
|
||||
|
||||
import aurweb.config
|
||||
import aurweb.db
|
||||
|
||||
packagesfile = aurweb.config.get('mkpkglists', 'packagesfile')
|
||||
packagesmetafile = aurweb.config.get('mkpkglists', 'packagesmetafile')
|
||||
pkgbasefile = aurweb.config.get('mkpkglists', 'pkgbasefile')
|
||||
userfile = aurweb.config.get('mkpkglists', 'userfile')
|
||||
|
||||
|
@ -27,6 +29,14 @@ def main():
|
|||
"WHERE PackageBases.PackagerUID IS NOT NULL")
|
||||
f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
|
||||
|
||||
with gzip.open(packagesmetafile, "wt") as f:
|
||||
cur = conn.execute("SELECT * FROM Packages")
|
||||
json.dump({
|
||||
"warning": "This is a experimental! It can be removed or modified without warning!",
|
||||
"columns": [d[0] for d in cur.description],
|
||||
"data": cur.fetchall()
|
||||
}, f)
|
||||
|
||||
with gzip.open(pkgbasefile, "w") as f:
|
||||
f.write(bytes(pkgbaselist_header + "\n", "UTF-8"))
|
||||
cur = conn.execute("SELECT Name FROM PackageBases " +
|
||||
|
|
|
@ -102,6 +102,7 @@ server = https://mirrors.kernel.org/archlinux/%s/os/x86_64
|
|||
|
||||
[mkpkglists]
|
||||
packagesfile = /srv/http/aurweb/web/html/packages.gz
|
||||
packagesmetafile = /srv/http/aurweb/web/html/packages-meta-v1.json.gz
|
||||
pkgbasefile = /srv/http/aurweb/web/html/pkgbase.gz
|
||||
userfile = /srv/http/aurweb/web/html/users.gz
|
||||
|
||||
|
|
|
@ -67,6 +67,7 @@ server = file://$(pwd)/remote/
|
|||
|
||||
[mkpkglists]
|
||||
packagesfile = packages.gz
|
||||
packagesmetafile = packages-meta-v1.json.gz
|
||||
pkgbasefile = pkgbase.gz
|
||||
userfile = users.gz
|
||||
EOF
|
||||
|
|
|
@ -189,6 +189,7 @@ if (!empty($tokens[1]) && '/' . $tokens[1] == get_pkg_route()) {
|
|||
readfile("./$path");
|
||||
break;
|
||||
case "/packages.gz":
|
||||
case "/packages-teapot.json.gz":
|
||||
case "/pkgbase.gz":
|
||||
case "/users.gz":
|
||||
header("Content-Type: text/plain");
|
||||
|
|
Loading…
Add table
Reference in a new issue