You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@whimsical.apache.org by sebb <se...@gmail.com> on 2017/06/16 14:36:35 UTC

Transitioning to ou=projects for external public data consumers

This is about the contents/purpose of the public json files; I'll
start a separate thread about changes in Whimsy itself.

==

The ou=projects group is eventually intended to replace
ou=pmc,ou=committees,ou=groups and ou=groups

In the meantime, the public data is spread between

public_ldap_committees.json
public_ldap_groups.json
and
public_ldap_projects.json

Lots of projects rely on the first two.

So I wonder if would make sense to continue to populate them, but
derive the data from ou=projects as the PMCs and podlings are cut
over.

In case it matters to consumers, it might make sense to add a flag to
indicate the source of the roster.

The asf-auth and pit-auth files can be parsed to determine if a (P)PMC
is using the new ou=projects group, so there is no need to maintain a
separate register.

I started looking into using projects.json and falling back to the
other LDAP files, but it seemed that a lot of work and testing would
be needed.

Whilst this proposal changes the source of the data files, I think the
meaning would be unchanged.
e.g. roster membership in committees.json is still used to grant PMC-karma

Does that make sense?

In the case of podlings, the data has been obtained from
public_nonldap_groups.json

This only has a single purpose, which is to grant committer karma,
i.e. it is similar to ou=group.
AFAIK there was no way to distinguish PPMC members from committers.

Again, it probably makes sense to continue to populate
public_nonldap_groups.json from ou=projects as the podlings are cut
over.

I'm not sure what to do about ou=projects owner roster for podlings.
This is new data.

I suspect it would break a lot of code to add it to public_ldap_committees.json.
One would also have to add the members roster to public_ldap_groups.json.

Maybe for podlings code can pick up this new information (if required)
from the new projects.json file.