#155 make "extra" data more useful
Opened 2 years ago by decathorpe. Modified 2 years ago

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 only lists which people's BugZilla accounts need to be CCd on bugs
  • pagure_poc only lists the person responsible for 1) the package, 2) fedora, and 3) EPEL
  • pagure_owner_alias does not list groups at all, not sure what it's for

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.

Metadata