[aur-dev] [PATCH] mkpkglists: Generate a list of user names
Lukas Fleischer
lfleischer at archlinux.org
Tue Aug 1 05:09:30 UTC 2017
In addition to the packages list and the package base list, also create
a list of registered user names.
Signed-off-by: Lukas Fleischer <lfleischer at archlinux.org>
---
aurweb/scripts/mkpkglists.py | 7 +++++++
conf/config.proto | 1 +
test/setup.sh | 1 +
test/t2100-mkpkglists.sh | 18 ++++++++++++++++++
4 files changed, 27 insertions(+)
diff --git a/aurweb/scripts/mkpkglists.py b/aurweb/scripts/mkpkglists.py
index 8a0f2e9..686ee7d 100755
--- a/aurweb/scripts/mkpkglists.py
+++ b/aurweb/scripts/mkpkglists.py
@@ -8,6 +8,7 @@ import aurweb.db
packagesfile = aurweb.config.get('mkpkglists', 'packagesfile')
pkgbasefile = aurweb.config.get('mkpkglists', 'pkgbasefile')
+userfile = aurweb.config.get('mkpkglists', 'userfile')
def main():
@@ -16,6 +17,7 @@ def main():
datestr = datetime.datetime.utcnow().strftime("%a, %d %b %Y %H:%M:%S GMT")
pkglist_header = "# AUR package list, generated on " + datestr
pkgbaselist_header = "# AUR package base list, generated on " + datestr
+ userlist_header = "# AUR user name list, generated on " + datestr
with gzip.open(packagesfile, "w") as f:
f.write(bytes(pkglist_header + "\n", "UTF-8"))
@@ -31,6 +33,11 @@ def main():
"WHERE PackagerUID IS NOT NULL")
f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
+ with gzip.open(userfile, "w") as f:
+ f.write(bytes(userlist_header + "\n", "UTF-8"))
+ cur = conn.execute("SELECT UserName FROM Users")
+ f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
+
conn.close()
diff --git a/conf/config.proto b/conf/config.proto
index 6c637b0..1750929 100644
--- a/conf/config.proto
+++ b/conf/config.proto
@@ -71,3 +71,4 @@ server = ftp://mirrors.kernel.org/archlinux/%s/os/x86_64
[mkpkglists]
packagesfile = /srv/http/aurweb/web/html/packages.gz
pkgbasefile = /srv/http/aurweb/web/html/pkgbase.gz
+userfile = /srv/http/aurweb/web/html/users.gz
diff --git a/test/setup.sh b/test/setup.sh
index efa1ab8..d98c49c 100644
--- a/test/setup.sh
+++ b/test/setup.sh
@@ -61,6 +61,7 @@ server = file://$(pwd)/remote/
[mkpkglists]
packagesfile = packages.gz
pkgbasefile = pkgbase.gz
+userfile = users.gz
EOF
cat >sendmail.sh <<-\EOF
diff --git a/test/t2100-mkpkglists.sh b/test/t2100-mkpkglists.sh
index 1e2edc3..fc11d07 100755
--- a/test/t2100-mkpkglists.sh
+++ b/test/t2100-mkpkglists.sh
@@ -44,4 +44,22 @@ test_expect_success 'Test package list generation.' '
test_cmp actual expected
'
+test_expect_success 'Test user list generation.' '
+ "$MKPKGLISTS" &&
+ cat <<-EOD >expected &&
+ dev
+ tu
+ tu2
+ tu3
+ tu4
+ user
+ user2
+ user3
+ user4
+ EOD
+ gunzip users.gz &&
+ sed "/^#/d" users >actual &&
+ test_cmp actual expected
+'
+
test_done
--
2.13.3
More information about the aur-dev
mailing list