nixpkgs/ci/github-script
Wolfgang Walther bf3607aa87
ci/github-script/commits: allow reason for not cherry-picking
This change allows giving a reason via footer of the commit message for
why this commit is not cherry-picked. This avoids having to "explain"
the automated review comment afterwards - instead, this explanation can
be given immediately when writing that commit.

For example, for an update of `xen` on the stable branch, this could be:

```
xen: 4.19.3-unstable-2025-07-09 -> 4.19.3

[... commit message ...]

Not-cherry-picked-because: unstable is on a different minor version
```

This would then be shown as part of the automated review. The severity
of this will be downgraded from "warning" to "important". We still treat
the review as "changes requested", because it would be very complicated
and noisy to handle two different categories of reviews, some with
requested changes and some with comments only.

An alternative would be to not show this review at all. However, given
that the reviewers expectation on backports should already be "if it's
not a clean backport, the automated review will tell me what to look
at", it seems better to show these and have the committer confirm by
dismissing the review. Otherwise we risk merging actually unreviewed
commits.
2025-08-14 18:28:30 +02:00
..
.editorconfig ci/github-script: default to commonjs 2025-07-14 10:35:18 +02:00
.gitignore ci/github-script/commits: init from ci/check-cherry-picks 2025-07-16 11:50:13 +02:00
.npmrc ci/github-script: use real @actions/core 2025-07-15 15:09:02 +02:00
check-cherry-picks.md ci/github-script/commits: shorten and clarify review comment 2025-07-16 15:47:19 +02:00
commits.js ci/github-script/commits: allow reason for not cherry-picking 2025-08-14 18:28:30 +02:00
labels.js ci/github-script/labels: limit cutoff to max 1 day 2025-07-20 21:53:21 +02:00
package-lock.json ci/github-script: use real @actions/core 2025-07-15 15:09:02 +02:00
package.json ci/github-script: use real @actions/core 2025-07-15 15:09:02 +02:00
README.md ci/github-script/commits: init from ci/check-cherry-picks 2025-07-16 11:50:13 +02:00
run ci/github-script/commits: init from ci/check-cherry-picks 2025-07-16 11:50:13 +02:00
shell.nix ci/github-script: add gh dependency to dev shell 2025-07-15 12:19:41 +02:00
withRateLimit.js ci/github-script/commits: init from ci/check-cherry-picks 2025-07-16 11:50:13 +02:00

GitHub specific CI scripts

This folder contains actions/github-script-based JavaScript code. It provides a nix-shell environment to run and test these actions locally.

To run any of the scripts locally:

  • Enter nix-shell in ./ci/github-script.
  • Ensure gh is authenticated.

Check commits

Run ./run commits OWNER REPO PR, where OWNER is your username or "NixOS", REPO is the name of your fork or "nixpkgs" and PR is the number of the pull request to check.

Labeler

Run ./run labels OWNER REPO, where OWNER is your username or "NixOS" and REPO the name of your fork or "nixpkgs".