mirror of
https://github.com/NixOS/ofborg
synced 2024-10-18 14:56:36 -04:00
maintainers: Add support for teams
* meta.maintainers can contain either individual maintainers or maintainer teams * maintainer teams can be nested * multiple teams can have overlapping membership
This commit is contained in:
parent
ce5f77632a
commit
16df9822ab
|
@ -36,8 +36,22 @@ let
|
|||
(pkg: pkg // { package = pkgs.lib.attrsets.attrByPath pkg.path null pkgs; })
|
||||
validPackageAttributes;
|
||||
|
||||
# meta.maintainers can contain either individual maintainers or maintainer teams
|
||||
# maintainer teams can be nested
|
||||
# multiple teams can have overlapping membership
|
||||
extractMembersFromTeams = maintainers:
|
||||
(pkg.lib.lists.unique (
|
||||
builtins.concatMap
|
||||
(maintainerOrTeam:
|
||||
if maintainerOrTeam ? members
|
||||
then extractMembersFromTeams maintainerOrTeam.members
|
||||
else [ maintainerOrTeam ]
|
||||
)
|
||||
maintainers
|
||||
));
|
||||
|
||||
attrsWithMaintainers = builtins.map
|
||||
(pkg: pkg // { maintainers = (pkg.package.meta or {}).maintainers or []; })
|
||||
(pkg: pkg // { maintainers = extractMembersFromTeams (pkg.package.meta or {}).maintainers or []; })
|
||||
attrsWithPackages;
|
||||
|
||||
attrsWeCanPing = builtins.filter
|
||||
|
|
Loading…
Reference in a new issue