Hi,

with the switch to GitHub for issues I started looking into GitHub
Project boards to help us manage Issues and Pull Requests.

The first concrete result of this is ready for feedback:

Apache Cordova - Platforms Pull Requests
https://github.com/orgs/apache/projects/7

As the name implies, this board contains all Pull Requests for the
Platform repositories (ios, android, windows, osx, browser). It can be
used to 1) get an overview of all the PRs for several repositories at
the same time and 2) help us maintainers to find PRs to comment on,
test and approve or merge.

The project board contains these columns:

- 🐣 New PR / Untriaged (🤖/👩‍🔧)
- 👷 Blocked: Work in Progress (👩‍🔧)
- ⛔ Blocked: Tests failing (👩‍🔧)
- 💥 Blocked: Conflict (👩‍🔧)
- ⏳ Waiting for Review (👩‍🔧)
- 🙅 Pending Approval (🤖)
- ✅ Approved, waiting for Merge (🤖)
- 🏆 Merged, waiting for Release (🤖)
- ☠️ Closed/Abandoned (🤖)
- 🎈 Released (👩‍🔧)

The columns itself should cover all the common cases we can encounter
with PRs (Did I miss anything that should be tracked?).

The column a PR is currently located in is shown in the "Projects"
section of the sidebar of the PR on GitHub. Each time a PR is moved,
the PR gets a "<username> moved this from <foo> to <bar>" line added
at the bottom. The emojis make parsing these info bits a lot easier.

New PRs can be added to this board a) semi-automatically by clicking
the "Cog" icon next to "Projects" in the sidebar of a PR on Github and
then selecting the board or b) by using the "Add cards" functionality
on the board itself. There is no way to fully automatically add new
PRs to this board yet [1].

The emojis at the end of the column description (🤖/👩‍🔧) explain who
is responsible for getting PRs into or out of a lane. As you can see
only the first 5 columns (and the last one) have to be handled
manually, the rest is automated.
Our "work" on this board is only to get all PRs from "New PR" to
"Waiting for Review" in the board. Then the automation takes over by
looking if a PR is approved, merged or closed on GitHub itself. At the
end we can manually track what PRs were released to users.


Feedback or Comments?

If this is welcome, I will create identical project boards for tooling
and plugins. [2]

Best,
Jan



[1] If this project board is considered useful and will be used, there
are options to automatically add new PRs to this column via GitHub
apps. We certainly could use this, but I didn't want to spend the time
to configure this up front.

[2] It will be interesting to see how the automation will work for
e.g. Plugins where we have >5 repositories. Probably we will also need
a workaround the "5 repo per project board" limit from Github via an
GitHub app.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to