You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@community.apache.org by hb...@apache.org on 2015/05/10 04:08:12 UTC
svn commit: r1678533 -
/comdev/projects.apache.org/scripts/import/parsecommittees.py
Author: hboutemy
Date: Sun May 10 02:08:11 2015
New Revision: 1678533
URL: http://svn.apache.org/r1678533
Log:
first implementation of tlps.json output
Modified:
comdev/projects.apache.org/scripts/import/parsecommittees.py
Modified: comdev/projects.apache.org/scripts/import/parsecommittees.py
URL: http://svn.apache.org/viewvc/comdev/projects.apache.org/scripts/import/parsecommittees.py?rev=1678533&r1=1678532&r2=1678533&view=diff
==============================================================================
--- comdev/projects.apache.org/scripts/import/parsecommittees.py (original)
+++ comdev/projects.apache.org/scripts/import/parsecommittees.py Sun May 10 02:08:11 2015
@@ -12,6 +12,23 @@ renamesChairs2Json = {
'Apache Logging Services': 'Apache Logging',
'Apache Perl': 'Apache mod_perl'
}
+# TLP ids not matching committee name in lowercase
+tlp_ids = {
+ 'Community Development': 'comdev',
+ 'HTTP Server': 'httpd',
+ 'Lucene.Net': 'lucenenet',
+ 'Open Climate Workbench': 'climate'
+}
+# homepages not matching http://<tlp>.apache.org/
+homepages = {
+ 'comdev': 'http://community.apache.org/',
+ 'httpcomponents': 'http://hc.apache.org/',
+ 'webservices': 'http://ws.apache.org/'
+}
+# LDAP group ids not matching tlp
+gids = {
+ 'webservices': 'ws'
+}
with open("../../site/json/foundation/tlps-evolution.json", "r") as f:
tlpsEvolution = json.loads(f.read())
@@ -28,6 +45,7 @@ except:
sys.exit(1)
tlpCount = 0
+tlps = []
addedTlps = []
c = {}
@@ -40,19 +58,44 @@ for pmc in re.findall(r"\* .+?\s+\(est\.
month = m.group(2)
year = m.group(3)
if not re.search(r"Committee", pmc):
+ if project in tlp_ids:
+ tlp_id = tlp_ids[project]
+ else:
+ tlp_id = project.lower().replace(' ', '').replace('.', '')
# Classical TLP
project = "Apache %s" % project
if project in renamesCommittee2Json:
project = renamesCommittee2Json[project]
#print(project)
tlpCount += 1
+
+ # add TLP to tlpsEvolution if necessary
key = "%s-%s" % (year, month)
if not key in tlpsEvolution:
- tlpsEvolution[key] = []
+ tlpsEvolution[key] = [] # add new year-month
if not project in tlpsEvolution[key]:
+ # add TLP to tlpsEvolution
tlpsEvolution[key].append(project)
tlpsEvolution[key].sort()
addedTlps.append("%s: %s" % (key, project))
+
+ # add TLP to tlps
+ tlp = {}
+ tlp['id'] = tlp_id
+ if tlp_id in gids:
+ tlp['gid'] = gids[tlp_id]
+ tlp['name'] = project
+ tlp['established'] = key
+ if tlp_id in homepages:
+ tlp['homepage'] = homepages[tlp_id]
+ # TODO
+ # tlp['chair'] = uid
+ # tlp['pmcs'] = { 'uid': 'full name' }
+ # tlp['committers'] = { 'uid': 'full name' }
+ # tlp['reporting'] = 'j'/'f'/'m'
+ # tlp['charter']
+ # tlp['retired']
+ tlps.append(tlp)
else:
# Special Committee (Officer's, President's or Board)
print("INFO: %s ignored %s" % (project, pmc[pmc.rfind('('):]))
@@ -67,6 +110,10 @@ addedTlps.sort()
for added in addedTlps:
print("- %s" % added)
+with open("../../site/json/foundation/tlps.json", "w") as f:
+ f.write(json.dumps(tlps, sort_keys=True, indent=0))
+ f.close()
+
# compare with chairs, for consistency checking
chairs = json.load(open("../../site/json/foundation/chairs.json"))
for chair in chairs: