The data currently provided at https://src.fedoraproject.org/extras/ is of limited usefulness, and it looks like all three files were added for a specific use case, but they don't contain enough information for new use cases.
For example, the new FESCo SIG Policy mandates that groups get a minimum ACL for certain sets of packages (i.e. "@rust-sig" gets at least "commit" ACL on all projects matching "rpms/rust-*"). The script to accomplish this currently uses pagure_bz.json because it lists all co-maintainers of a given package, but it doesn't include the ACL itself. So if somebody added "@rust-sig" with "ticket" ACL to a package, that's not caught by the script, since I didn't want to DoS pagure with thousands of API calls to fetch the actual ACLs on all packages.
pagure_bz.json
Would it be possible to provide all this data in a single, unified file, which could be used for all these purposes? Something like this:
{ "rpms": [ { "project": "foo", "owner": "bar", "admin": ["baz1", "baz2"], "commit": ["baz3", "baz4"], "ticket": ["baz5", "baz6"], "watch": ["baz7", "baz8"], "unwatch": ["baz3"], "fedora": "bar", "epel": "baz6", }, ], "modules": {}, "tests": {}, "containers": {}, }
This should provide all the data that's currently provided by the existing three files, plus additional information (i.e. which ACL does a user or group actually have).
c.f. https://pagure.io/releng/issue/11011
Log in to comment on this ticket.