Code review tooling for the monorepo #3

Open
opened 2024-07-01 17:18:13 +00:00 by delroth · 4 comments
Owner

Might be handled along with #1 if using Gerrit for both.

Might be handled along with #1 if using Gerrit for both.
delroth added this to the Bootstrap infra project 2024-07-01 17:18:13 +00:00
raito was assigned by delroth 2024-07-04 02:48:31 +00:00
Owner

TODO:

  • Plug minimum role mapping (#35) into Gerrit.
  • Plug initial policies: +2/+1/-1/-2 into nixpkgs, code owners, etc.
  • Draw the outline to insert CI automation into Gerrit, e.g. all that is GHA should be replaced by… something?
TODO: - Plug minimum role mapping (#35) into Gerrit. - Plug initial policies: +2/+1/-1/-2 into nixpkgs, code owners, etc. - Draw the outline to insert CI automation into Gerrit, e.g. all that is GHA should be replaced by… something?
Owner

Basic CI automation:

Staging workflow:

  • Periodic merge
    • master → haskell-updates
    • release-24.05 → staging-next-24.05
    • staging-next-24.05 → staging-24.05
    • master → staging-next (every 6h)
    • staging-next → staging (every 6h)

More involved:

Misc and weird:

Basic CI automation: - [Release checks](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/basic-eval.yml) - [EditorConfig](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/editorconfig.yml) - [Build NixOS manual](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/manual-nixos.yml) - [Build Nixpkgs manual](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/manual-nixpkgs.yml) - [Build Nixpkgs shell](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/check-shell.yml) - [Check formatting](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/check-nix-format.yml) - [Check sortedness of maintainer-list](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/check-maintainers-sorted.yaml) - [Check alleged cherry-picks](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/check-cherry-picks.yml) - [Verify parseability of Nix files](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/nix-parse.yml) - [Block merge to channel branches](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/no-channel.yml): can be implemented as a Prolog rule and a -2 Staging workflow: - [Periodic merge](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/periodic-merge-24h.yml) - master → haskell-updates - release-24.05 → staging-next-24.05 - staging-next-24.05 → staging-24.05 - master → staging-next (every 6h) - staging-next → staging (every 6h) More involved: - [Automatic labeller](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/labels.yml): https://github.com/NixOS/nixpkgs/blob/master/.github/labeler.yml - [OfBorg](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/ofborg-pending.yml) -- may not be necessary anymore - [Check pkgs/by-name hierarchy](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/check-by-name.yml) - [Backport action](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/backport.yml) Misc and weird: - [Update Terraform providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml)
Owner
Labels added: https://cl.forkos.org/c/nixpkgs/+/62.
Owner

Proposal for group hierarchy for now:

  • Registered users are "maintainers", e.g. free to open any CLs, etc, push stuff to their sandbox branches.
  • Developers are the new committers, commit access to the whole repository.
  • Infrastructure are infrastructure developers, commit access to the infra repository (if it goes on Gerrit, uncertain).
  • Administrators are Gerrit admins.

Later on, I'd like to introduce proper code owners, and they do not have to be Developers per se.

Proposal for group hierarchy for now: - Registered users are "maintainers", e.g. free to open any CLs, etc, push stuff to their sandbox branches. - Developers are the new committers, commit access to the whole repository. - Infrastructure are infrastructure developers, commit access to the infra repository (if it goes on Gerrit, uncertain). - Administrators are Gerrit admins. Later on, I'd like to introduce proper code owners, and they do not have to be Developers per se.
Sign in to join this conversation.
No labels
No milestone
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: the-distro/infra#3
No description provided.