summaryrefslogtreecommitdiffstats
path: root/scripts/mkpkglists.py
diff options
context:
space:
mode:
authorLukas Fleischer <lfleischer@archlinux.org>2016-09-20 08:42:59 +0200
committerLukas Fleischer <lfleischer@archlinux.org>2016-09-29 22:07:06 +0200
commit603b5b5db916da7d2a44e9e89587d62859840287 (patch)
tree570600310ef7fa112980b6a03dac068edb644888 /scripts/mkpkglists.py
parentf3fb614f196a1feb2738c56364f6e877d474ff2d (diff)
downloadaur-603b5b5db916da7d2a44e9e89587d62859840287.tar.gz
aur-603b5b5db916da7d2a44e9e89587d62859840287.tar.xz
Add a main() method to all Python scripts
Move the main program logic of all scripts to main() methods such that they can be used as modules and easily be invoked by setuptools wrapper scripts. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
Diffstat (limited to 'scripts/mkpkglists.py')
-rwxr-xr-xscripts/mkpkglists.py52
1 files changed, 30 insertions, 22 deletions
diff --git a/scripts/mkpkglists.py b/scripts/mkpkglists.py
index a6f8a197..8cab0a97 100755
--- a/scripts/mkpkglists.py
+++ b/scripts/mkpkglists.py
@@ -17,25 +17,33 @@ aur_db_user = config.get('database', 'user')
aur_db_pass = config.get('database', 'password')
aur_db_socket = config.get('database', 'socket')
-db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
- passwd=aur_db_pass, db=aur_db_name,
- unix_socket=aur_db_socket, buffered=True)
-cur = db.cursor()
-
-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
-
-with gzip.open(docroot + "packages.gz", "w") as f:
- f.write(bytes(pkglist_header + "\n", "UTF-8"))
- cur.execute("SELECT Packages.Name FROM Packages INNER JOIN PackageBases " +
- "ON PackageBases.ID = Packages.PackageBaseID " +
- "WHERE PackageBases.PackagerUID IS NOT NULL")
- f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
-
-with gzip.open(docroot + "pkgbase.gz", "w") as f:
- f.write(bytes(pkgbaselist_header + "\n", "UTF-8"))
- cur.execute("SELECT Name FROM PackageBases WHERE PackagerUID IS NOT NULL")
- f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
-
-db.close()
+
+def main():
+ db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
+ passwd=aur_db_pass, db=aur_db_name,
+ unix_socket=aur_db_socket, buffered=True)
+ cur = db.cursor()
+
+ 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
+
+ with gzip.open(docroot + "packages.gz", "w") as f:
+ f.write(bytes(pkglist_header + "\n", "UTF-8"))
+ cur.execute("SELECT Packages.Name FROM Packages " +
+ "INNER JOIN PackageBases " +
+ "ON PackageBases.ID = Packages.PackageBaseID " +
+ "WHERE PackageBases.PackagerUID IS NOT NULL")
+ f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
+
+ with gzip.open(docroot + "pkgbase.gz", "w") as f:
+ f.write(bytes(pkgbaselist_header + "\n", "UTF-8"))
+ cur.execute("SELECT Name FROM PackageBases " +
+ "WHERE PackagerUID IS NOT NULL")
+ f.writelines([bytes(x[0] + "\n", "UTF-8") for x in cur.fetchall()])
+
+ db.close()
+
+
+if __name__ == '__main__':
+ main()