5
5
* tl;dr: You can land Pull Requests by adding the ` commit-queue ` label to it.*
6
6
7
7
Commit Queue is an experimental feature for the project which simplifies the
8
- landing process by automating it via GitHub Actions. With it, Collaborators are
9
- able to land Pull Requests by adding the ` commit-queue ` label to a PR. All
8
+ landing process by automating it via GitHub Actions. With it, Collaborators can
9
+ land Pull Requests by adding the ` commit-queue ` label to a PR. All
10
10
checks will run via node-core-utils, and if the Pull Request is ready to land,
11
11
the Action will rebase it and push to master.
12
12
13
- This document gives an overview on how the Commit Queue works, as well as
13
+ This document gives an overview of how the Commit Queue works, as well as
14
14
implementation details, reasoning for design choices, and current limitations.
15
15
16
16
## Overview
17
17
18
18
From a high-level, the Commit Queue works as follow:
19
19
20
- 1 . Collaborators will add ` commit-queue ` label to Pull Reuqests ready to land
20
+ 1 . Collaborators will add ` commit-queue ` label to Pull Requests ready to land
21
21
2 . Every five minutes the queue will do the following for each Pull Request
22
22
with the label:
23
23
1 . Check if the PR also has a ` request-ci ` label (if it has, skip this PR
@@ -45,7 +45,7 @@ of the commit queue:
45
45
46
46
1 . All commits in a Pull Request must either be following commit message
47
47
guidelines or be a valid [ ` fixup! ` ] ( https://git-scm.com/docs/git-commit#Documentation/git-commit.txt---fixupltcommitgt )
48
- commits that will be correctly handled by [ ` --autosquash ` ] ( https://git-scm.com/docs/git-rebase#Documentation/git-rebase.txt---autosquash )
48
+ commit that will be correctly handled by the [ ` --autosquash ` ] ( https://git-scm.com/docs/git-rebase#Documentation/git-rebase.txt---autosquash )
49
49
option
50
50
2 . A CI must've ran and succeeded since the last change on the PR
51
51
3 . A Collaborator must have approved the PR since the last change
@@ -58,7 +58,7 @@ events every five minutes. Five minutes is the smallest number accepted by
58
58
the scheduler. The scheduler is not guaranteed to run every five minutes, it
59
59
might take longer between runs.
60
60
61
- Using the scheduler is preferrable over using pull_request_target for two
61
+ Using the scheduler is preferable over using pull_request_target for two
62
62
reasons:
63
63
64
64
1 . if two Commit Queue Actions execution overlap, there's a high-risk that
@@ -87,7 +87,7 @@ that into a list of PR ids we can pass as arguments to
87
87
1 . The repository owner
88
88
2 . The repository name
89
89
3 . The Action GITHUB_TOKEN
90
- 4 . Every positional argument starting at this one will be a Pull Reuqest ID of
90
+ 4 . Every positional argument starting at this one will be a Pull Request ID of
91
91
a Pull Request with commit-queue set.
92
92
93
93
The script will iterate over the pull requests. ` ncu-ci ` is used to check if
@@ -97,7 +97,7 @@ is pending. No other CI validation is done here since `git node land` will fail
97
97
if the last CI failed.
98
98
99
99
The script removes the ` commit-queue ` label. It then runs ` git node land ` ,
100
- forwarding stdout and stderr to a file. If any errors happens ,
100
+ forwarding stdout and stderr to a file. If any errors happen ,
101
101
` git node land --abort ` is run, and then a ` commit-queue-failed ` label is added
102
102
to the PR, as well as a comment with the output of ` git node land ` .
103
103
@@ -115,4 +115,4 @@ Queue to work because the Action lands PRs just like collaborators do today. If
115
115
once we start using the Commit Queue we notice that the number of required
116
116
reverts increases drastically, we can pause the queue until a Revert Queue is
117
117
implemented, but until then we can enable the Commit Queue and then work on a
118
- Revert Queue as a follow up.
118
+ Revert Queue as a follow- up.
0 commit comments