[sysadmin-bin: 2/5] mail: add gitlab modules to topics list
- From: Andrea Veri <averi src gnome org>
- To: gnome-sysadmin gnome org,commits-list gnome org
- Subject: [sysadmin-bin: 2/5] mail: add gitlab modules to topics list
- Date: Tue, 27 Feb 2018 10:07:42 +0000 (UTC)
commit 8a6a8fa15b601595fc080f5b3b7c781b241eb939
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date: Fri Feb 9 16:51:19 2018 +0200
mail: add gitlab modules to topics list
mail/set-topics-svn-commits-list | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
---
diff --git a/mail/set-topics-svn-commits-list b/mail/set-topics-svn-commits-list
index 34b405b..b98f31b 100755
--- a/mail/set-topics-svn-commits-list
+++ b/mail/set-topics-svn-commits-list
@@ -5,6 +5,7 @@ import re
import time
import getopt
import urllib
+import json
from types import TupleType
# hack
@@ -17,6 +18,30 @@ from Mailman import Utils
from Mailman import Errors
from Mailman import i18n
+def get_gitlab_gnome_org_modules():
+ modules = []
+ api_url = 'https://gitlab.gnome.org/api/v4/projects'
+
+ f = urllib.urlopen(api_url + "?per_page=100")
+ if f.headers.gettype() != 'application/json' or f.headers.status != "":
+ sys.exit(1)
+
+ pages = int(f.headers['X-Total-Pages'])
+ f.close()
+
+ for page in range(pages):
+ f = urllib.urlopen(api_url + "?per_page=100&simple=true&order_by=name&sort=asc&page=" + str(page))
+ if f.headers.gettype() != 'application/json' or f.headers.status != "":
+ sys.exit(1)
+
+ projects = json.loads(f.read())
+ f.close()
+
+ for project in projects:
+ modules.append(project['path'])
+
+ return list(set(modules))
+
def get_git_gnome_org_modules():
f = urllib.urlopen("http://git.gnome.org/repositories.txt")
@@ -30,7 +55,7 @@ def get_git_gnome_org_modules():
modules = modules.strip()
return modules.split("\n")
-modules = get_git_gnome_org_modules()
+modules = get_gitlab_gnome_org_modules() + get_git_gnome_org_modules()
modules.sort()
# Prepare topics variable
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]