Compare commits
22 Commits
Author | SHA1 | Date | |
---|---|---|---|
1ff93da091 | |||
0524c01297 | |||
548adff9dc | |||
28674474a4 | |||
4fb90330a4 | |||
e4c811acf5 | |||
99ccb3479b | |||
13616a4432 | |||
b5b91bc2b0 | |||
5666cd8fe9 | |||
ad897490d5 | |||
0735106af9 | |||
9aeedaa8c2 | |||
52d31873b6 | |||
09b9ac155b | |||
6ec5e3e26b | |||
8b46437b6d | |||
e361fd1788 | |||
052fc72b41 | |||
ed00d4629c | |||
34371f09e5 | |||
c27ea51ae0 |
@ -9,8 +9,7 @@
|
||||
"plugin:import/errors",
|
||||
"plugin:import/warnings",
|
||||
"plugin:import/typescript",
|
||||
"plugin:prettier/recommended",
|
||||
"prettier/@typescript-eslint"
|
||||
"plugin:prettier/recommended"
|
||||
],
|
||||
"plugins": ["@typescript-eslint"],
|
||||
"rules": {
|
||||
|
@ -50,6 +50,7 @@ All inputs are **optional**. If not set, sensible defaults will be used.
|
||||
| `committer` | The committer name and email address in the format `Display Name <email@address.com>`. Defaults to the GitHub Actions bot user. | `GitHub <noreply@github.com>` |
|
||||
| `author` | The author name and email address in the format `Display Name <email@address.com>`. Defaults to the user who triggered the workflow run. | `${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>` |
|
||||
| `signoff` | Add [`Signed-off-by`](https://git-scm.com/docs/git-commit#Documentation/git-commit.txt---signoff) line by the committer at the end of the commit log message. | `false` |
|
||||
| `gpg-sign` | GPG-sign commits. See [GPG commit signature verification](docs/concepts-guidelines.md#gpg-commit-signature-verification) for details. | `false` |
|
||||
| `branch` | The pull request branch name. | `create-pull-request/patch` |
|
||||
| `delete-branch` | Delete the `branch` when closing pull requests, and when undeleted after merging. Recommend `true`. | `false` |
|
||||
| `branch-suffix` | The branch suffix type when using the alternative branching strategy. Valid values are `random`, `timestamp` and `short-commit-hash`. See [Alternative strategy](#alternative-strategy---always-create-a-new-pull-request-branch) for details. | |
|
||||
|
@ -220,6 +220,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('none')
|
||||
@ -236,6 +237,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -263,6 +265,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -283,6 +286,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -310,6 +314,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -332,6 +337,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -360,6 +366,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('not-updated')
|
||||
@ -380,6 +387,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -416,6 +424,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -446,6 +455,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -473,6 +483,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -493,6 +504,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -532,6 +544,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -558,6 +571,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -600,6 +614,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -621,6 +636,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -651,6 +667,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -676,6 +693,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -710,6 +728,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -737,6 +756,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -779,6 +799,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -805,6 +826,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
FORK_REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -833,6 +855,7 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
FORK_REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -854,7 +877,8 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
true
|
||||
true,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
expect(await getFileContent(TRACKED_FILE)).toEqual(changes.tracked)
|
||||
@ -889,7 +913,8 @@ describe('create-or-update-branch tests', () => {
|
||||
'',
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
true
|
||||
true,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
expect(_result.hasDiffWithBase).toBeTruthy()
|
||||
@ -920,6 +945,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('none')
|
||||
@ -939,6 +965,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -969,6 +996,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -992,6 +1020,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1022,6 +1051,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1047,6 +1077,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1078,6 +1109,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('not-updated')
|
||||
@ -1101,6 +1133,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1140,6 +1173,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1173,6 +1207,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1203,6 +1238,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1228,6 +1264,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1270,6 +1307,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1299,6 +1337,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1344,6 +1383,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1368,6 +1408,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1401,6 +1442,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1429,6 +1471,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1466,6 +1509,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1496,6 +1540,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1541,6 +1586,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1570,6 +1616,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
FORK_REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1601,6 +1648,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
FORK_REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1629,6 +1677,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1661,6 +1710,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
@ -1686,6 +1736,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(result.action).toEqual('created')
|
||||
@ -1726,6 +1777,7 @@ describe('create-or-update-branch tests', () => {
|
||||
BASE,
|
||||
BRANCH,
|
||||
REMOTE_NAME,
|
||||
false,
|
||||
false
|
||||
)
|
||||
expect(_result.action).toEqual('updated')
|
||||
|
@ -24,6 +24,9 @@ inputs:
|
||||
signoff:
|
||||
description: 'Add `Signed-off-by` line by the committer at the end of the commit log message.'
|
||||
default: false
|
||||
gpg-sign:
|
||||
description: 'GPG-sign commits.'
|
||||
default: false
|
||||
branch:
|
||||
description: 'The pull request branch name.'
|
||||
default: 'create-pull-request/patch'
|
||||
|
293
dist/index.js
vendored
293
dist/index.js
vendored
@ -99,7 +99,7 @@ function splitLines(multilineString) {
|
||||
.map(s => s.trim())
|
||||
.filter(x => x !== '');
|
||||
}
|
||||
function createOrUpdateBranch(git, commitMessage, base, branch, branchRemoteName, signoff) {
|
||||
function createOrUpdateBranch(git, commitMessage, base, branch, branchRemoteName, signoff, gpgSign) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
// Get the working base.
|
||||
// When a ref, it may or may not be the actual base.
|
||||
@ -129,6 +129,9 @@ function createOrUpdateBranch(git, commitMessage, base, branch, branchRemoteName
|
||||
if (signoff) {
|
||||
params.push('--signoff');
|
||||
}
|
||||
if (gpgSign) {
|
||||
params.push('--gpg-sign');
|
||||
}
|
||||
yield git.commit(params);
|
||||
}
|
||||
// Perform fetch and reset the working base
|
||||
@ -375,7 +378,7 @@ function createPullRequest(inputs) {
|
||||
core.endGroup();
|
||||
// Create or update the pull request branch
|
||||
core.startGroup('Create or update the pull request branch');
|
||||
const result = yield create_or_update_branch_1.createOrUpdateBranch(git, inputs.commitMessage, inputs.base, inputs.branch, branchRemoteName, inputs.signoff);
|
||||
const result = yield create_or_update_branch_1.createOrUpdateBranch(git, inputs.commitMessage, inputs.base, inputs.branch, branchRemoteName, inputs.signoff, inputs.gpgSign);
|
||||
core.endGroup();
|
||||
if (['created', 'updated'].includes(result.action)) {
|
||||
// The branch was created or updated
|
||||
@ -932,7 +935,7 @@ class GitHubHelper {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
// Try to create the pull request
|
||||
try {
|
||||
const { data: pull } = yield this.octokit.pulls.create(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { title: inputs.title, head: headBranch, base: inputs.base, body: inputs.body, draft: inputs.draft }));
|
||||
const { data: pull } = yield this.octokit.rest.pulls.create(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { title: inputs.title, head: headBranch, base: inputs.base, body: inputs.body, draft: inputs.draft }));
|
||||
core.info(`Created pull request #${pull.number} (${headBranch} => ${inputs.base})`);
|
||||
return {
|
||||
number: pull.number,
|
||||
@ -950,8 +953,8 @@ class GitHubHelper {
|
||||
}
|
||||
}
|
||||
// Update the pull request that exists for this branch and base
|
||||
const { data: pulls } = yield this.octokit.pulls.list(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { state: 'open', head: headBranch, base: inputs.base }));
|
||||
const { data: pull } = yield this.octokit.pulls.update(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { pull_number: pulls[0].number, title: inputs.title, body: inputs.body, draft: inputs.draft }));
|
||||
const { data: pulls } = yield this.octokit.rest.pulls.list(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { state: 'open', head: headBranch, base: inputs.base }));
|
||||
const { data: pull } = yield this.octokit.rest.pulls.update(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { pull_number: pulls[0].number, title: inputs.title, body: inputs.body, draft: inputs.draft }));
|
||||
core.info(`Updated pull request #${pull.number} (${headBranch} => ${inputs.base})`);
|
||||
return {
|
||||
number: pull.number,
|
||||
@ -962,7 +965,7 @@ class GitHubHelper {
|
||||
}
|
||||
getRepositoryParent(headRepository) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const { data: headRepo } = yield this.octokit.repos.get(Object.assign({}, this.parseRepository(headRepository)));
|
||||
const { data: headRepo } = yield this.octokit.rest.repos.get(Object.assign({}, this.parseRepository(headRepository)));
|
||||
if (!headRepo.parent) {
|
||||
throw new Error(`Repository '${headRepository}' is not a fork. Unable to continue.`);
|
||||
}
|
||||
@ -975,22 +978,20 @@ class GitHubHelper {
|
||||
const headBranch = `${headOwner}:${inputs.branch}`;
|
||||
// Create or update the pull request
|
||||
const pull = yield this.createOrUpdate(inputs, baseRepository, headBranch);
|
||||
// Set milestone, labels and assignees
|
||||
const updateIssueParams = {};
|
||||
// Apply milestone
|
||||
if (inputs.milestone) {
|
||||
updateIssueParams['milestone'] = inputs.milestone;
|
||||
core.info(`Applying milestone '${inputs.milestone}'`);
|
||||
yield this.octokit.rest.issues.update(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { issue_number: pull.number, milestone: inputs.milestone }));
|
||||
}
|
||||
// Apply labels
|
||||
if (inputs.labels.length > 0) {
|
||||
updateIssueParams['labels'] = inputs.labels;
|
||||
core.info(`Applying labels '${inputs.labels}'`);
|
||||
yield this.octokit.rest.issues.addLabels(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { issue_number: pull.number, labels: inputs.labels }));
|
||||
}
|
||||
// Apply assignees
|
||||
if (inputs.assignees.length > 0) {
|
||||
updateIssueParams['assignees'] = inputs.assignees;
|
||||
core.info(`Applying assignees '${inputs.assignees}'`);
|
||||
}
|
||||
if (Object.keys(updateIssueParams).length > 0) {
|
||||
yield this.octokit.issues.update(Object.assign(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { issue_number: pull.number }), updateIssueParams));
|
||||
yield this.octokit.rest.issues.addAssignees(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { issue_number: pull.number, assignees: inputs.assignees }));
|
||||
}
|
||||
// Request reviewers and team reviewers
|
||||
const requestReviewersParams = {};
|
||||
@ -1004,7 +1005,7 @@ class GitHubHelper {
|
||||
}
|
||||
if (Object.keys(requestReviewersParams).length > 0) {
|
||||
try {
|
||||
yield this.octokit.pulls.requestReviewers(Object.assign(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { pull_number: pull.number }), requestReviewersParams));
|
||||
yield this.octokit.rest.pulls.requestReviewers(Object.assign(Object.assign(Object.assign({}, this.parseRepository(baseRepository)), { pull_number: pull.number }), requestReviewersParams));
|
||||
}
|
||||
catch (e) {
|
||||
if (e.message && e.message.includes(ERROR_PR_REVIEW_FROM_AUTHOR)) {
|
||||
@ -1072,6 +1073,7 @@ function run() {
|
||||
committer: core.getInput('committer'),
|
||||
author: core.getInput('author'),
|
||||
signoff: core.getInput('signoff') === 'true',
|
||||
gpgSign: core.getInput('gpg-sign') === 'true',
|
||||
branch: core.getInput('branch'),
|
||||
deleteBranch: core.getInput('delete-branch') === 'true',
|
||||
branchSuffix: core.getInput('branch-suffix'),
|
||||
@ -2912,7 +2914,7 @@ function _objectWithoutProperties(source, excluded) {
|
||||
return target;
|
||||
}
|
||||
|
||||
const VERSION = "3.2.4";
|
||||
const VERSION = "3.3.2";
|
||||
|
||||
class Octokit {
|
||||
constructor(options = {}) {
|
||||
@ -2921,6 +2923,7 @@ class Octokit {
|
||||
baseUrl: request.request.endpoint.DEFAULTS.baseUrl,
|
||||
headers: {},
|
||||
request: Object.assign({}, options.request, {
|
||||
// @ts-ignore internal usage only, no need to type
|
||||
hook: hook.bind(null, "request")
|
||||
}),
|
||||
mediaType: {
|
||||
@ -3416,7 +3419,7 @@ function withDefaults(oldDefaults, newDefaults) {
|
||||
});
|
||||
}
|
||||
|
||||
const VERSION = "6.0.10";
|
||||
const VERSION = "6.0.11";
|
||||
|
||||
const userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`; // DEFAULTS has all properties set that EndpointOptions has, except url.
|
||||
// So we use RequestParameters and add method as additional required property.
|
||||
@ -3499,7 +3502,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
var request = __nccwpck_require__(234);
|
||||
var universalUserAgent = __nccwpck_require__(30);
|
||||
|
||||
const VERSION = "4.5.8";
|
||||
const VERSION = "4.6.1";
|
||||
|
||||
class GraphqlError extends Error {
|
||||
constructor(request, response) {
|
||||
@ -3522,10 +3525,18 @@ class GraphqlError extends Error {
|
||||
}
|
||||
|
||||
const NON_VARIABLE_OPTIONS = ["method", "baseUrl", "url", "headers", "request", "query", "mediaType"];
|
||||
const FORBIDDEN_VARIABLE_OPTIONS = ["query", "method", "url"];
|
||||
const GHES_V3_SUFFIX_REGEX = /\/api\/v3\/?$/;
|
||||
function graphql(request, query, options) {
|
||||
if (typeof query === "string" && options && "query" in options) {
|
||||
return Promise.reject(new Error(`[@octokit/graphql] "query" cannot be used as variable name`));
|
||||
if (options) {
|
||||
if (typeof query === "string" && "query" in options) {
|
||||
return Promise.reject(new Error(`[@octokit/graphql] "query" cannot be used as variable name`));
|
||||
}
|
||||
|
||||
for (const key in options) {
|
||||
if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key)) continue;
|
||||
return Promise.reject(new Error(`[@octokit/graphql] "${key}" cannot be used as variable name`));
|
||||
}
|
||||
}
|
||||
|
||||
const parsedOptions = typeof query === "string" ? Object.assign({
|
||||
@ -3612,7 +3623,7 @@ exports.withCustomRequest = withCustomRequest;
|
||||
|
||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
|
||||
const VERSION = "2.8.0";
|
||||
const VERSION = "2.13.3";
|
||||
|
||||
/**
|
||||
* Some “list” response that can be paginated have a different response structure
|
||||
@ -3723,6 +3734,16 @@ const composePaginateRest = Object.assign(paginate, {
|
||||
iterator
|
||||
});
|
||||
|
||||
const paginatingEndpoints = ["GET /app/installations", "GET /applications/grants", "GET /authorizations", "GET /enterprises/{enterprise}/actions/permissions/organizations", "GET /enterprises/{enterprise}/actions/runner-groups", "GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations", "GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners", "GET /enterprises/{enterprise}/actions/runners", "GET /enterprises/{enterprise}/actions/runners/downloads", "GET /events", "GET /gists", "GET /gists/public", "GET /gists/starred", "GET /gists/{gist_id}/comments", "GET /gists/{gist_id}/commits", "GET /gists/{gist_id}/forks", "GET /installation/repositories", "GET /issues", "GET /marketplace_listing/plans", "GET /marketplace_listing/plans/{plan_id}/accounts", "GET /marketplace_listing/stubbed/plans", "GET /marketplace_listing/stubbed/plans/{plan_id}/accounts", "GET /networks/{owner}/{repo}/events", "GET /notifications", "GET /organizations", "GET /orgs/{org}/actions/permissions/repositories", "GET /orgs/{org}/actions/runner-groups", "GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories", "GET /orgs/{org}/actions/runner-groups/{runner_group_id}/runners", "GET /orgs/{org}/actions/runners", "GET /orgs/{org}/actions/runners/downloads", "GET /orgs/{org}/actions/secrets", "GET /orgs/{org}/actions/secrets/{secret_name}/repositories", "GET /orgs/{org}/blocks", "GET /orgs/{org}/credential-authorizations", "GET /orgs/{org}/events", "GET /orgs/{org}/failed_invitations", "GET /orgs/{org}/hooks", "GET /orgs/{org}/installations", "GET /orgs/{org}/invitations", "GET /orgs/{org}/invitations/{invitation_id}/teams", "GET /orgs/{org}/issues", "GET /orgs/{org}/members", "GET /orgs/{org}/migrations", "GET /orgs/{org}/migrations/{migration_id}/repositories", "GET /orgs/{org}/outside_collaborators", "GET /orgs/{org}/projects", "GET /orgs/{org}/public_members", "GET /orgs/{org}/repos", "GET /orgs/{org}/team-sync/groups", "GET /orgs/{org}/teams", "GET /orgs/{org}/teams/{team_slug}/discussions", "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments", "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions", "GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions", "GET /orgs/{org}/teams/{team_slug}/invitations", "GET /orgs/{org}/teams/{team_slug}/members", "GET /orgs/{org}/teams/{team_slug}/projects", "GET /orgs/{org}/teams/{team_slug}/repos", "GET /orgs/{org}/teams/{team_slug}/team-sync/group-mappings", "GET /orgs/{org}/teams/{team_slug}/teams", "GET /projects/columns/{column_id}/cards", "GET /projects/{project_id}/collaborators", "GET /projects/{project_id}/columns", "GET /repos/{owner}/{repo}/actions/artifacts", "GET /repos/{owner}/{repo}/actions/runners", "GET /repos/{owner}/{repo}/actions/runners/downloads", "GET /repos/{owner}/{repo}/actions/runs", "GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts", "GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs", "GET /repos/{owner}/{repo}/actions/secrets", "GET /repos/{owner}/{repo}/actions/workflows", "GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", "GET /repos/{owner}/{repo}/assignees", "GET /repos/{owner}/{repo}/branches", "GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations", "GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs", "GET /repos/{owner}/{repo}/code-scanning/alerts", "GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances", "GET /repos/{owner}/{repo}/code-scanning/analyses", "GET /repos/{owner}/{repo}/collaborators", "GET /repos/{owner}/{repo}/comments", "GET /repos/{owner}/{repo}/comments/{comment_id}/reactions", "GET /repos/{owner}/{repo}/commits", "GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head", "GET /repos/{owner}/{repo}/commits/{commit_sha}/comments", "GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls", "GET /repos/{owner}/{repo}/commits/{ref}/check-runs", "GET /repos/{owner}/{repo}/commits/{ref}/check-suites", "GET /repos/{owner}/{repo}/commits/{ref}/statuses", "GET /repos/{owner}/{repo}/contributors", "GET /repos/{owner}/{repo}/deployments", "GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses", "GET /repos/{owner}/{repo}/events", "GET /repos/{owner}/{repo}/forks", "GET /repos/{owner}/{repo}/git/matching-refs/{ref}", "GET /repos/{owner}/{repo}/hooks", "GET /repos/{owner}/{repo}/invitations", "GET /repos/{owner}/{repo}/issues", "GET /repos/{owner}/{repo}/issues/comments", "GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions", "GET /repos/{owner}/{repo}/issues/events", "GET /repos/{owner}/{repo}/issues/{issue_number}/comments", "GET /repos/{owner}/{repo}/issues/{issue_number}/events", "GET /repos/{owner}/{repo}/issues/{issue_number}/labels", "GET /repos/{owner}/{repo}/issues/{issue_number}/reactions", "GET /repos/{owner}/{repo}/issues/{issue_number}/timeline", "GET /repos/{owner}/{repo}/keys", "GET /repos/{owner}/{repo}/labels", "GET /repos/{owner}/{repo}/milestones", "GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels", "GET /repos/{owner}/{repo}/notifications", "GET /repos/{owner}/{repo}/pages/builds", "GET /repos/{owner}/{repo}/projects", "GET /repos/{owner}/{repo}/pulls", "GET /repos/{owner}/{repo}/pulls/comments", "GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions", "GET /repos/{owner}/{repo}/pulls/{pull_number}/comments", "GET /repos/{owner}/{repo}/pulls/{pull_number}/commits", "GET /repos/{owner}/{repo}/pulls/{pull_number}/files", "GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers", "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews", "GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments", "GET /repos/{owner}/{repo}/releases", "GET /repos/{owner}/{repo}/releases/{release_id}/assets", "GET /repos/{owner}/{repo}/secret-scanning/alerts", "GET /repos/{owner}/{repo}/stargazers", "GET /repos/{owner}/{repo}/subscribers", "GET /repos/{owner}/{repo}/tags", "GET /repos/{owner}/{repo}/teams", "GET /repositories", "GET /repositories/{repository_id}/environments/{environment_name}/secrets", "GET /scim/v2/enterprises/{enterprise}/Groups", "GET /scim/v2/enterprises/{enterprise}/Users", "GET /scim/v2/organizations/{org}/Users", "GET /search/code", "GET /search/commits", "GET /search/issues", "GET /search/labels", "GET /search/repositories", "GET /search/topics", "GET /search/users", "GET /teams/{team_id}/discussions", "GET /teams/{team_id}/discussions/{discussion_number}/comments", "GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions", "GET /teams/{team_id}/discussions/{discussion_number}/reactions", "GET /teams/{team_id}/invitations", "GET /teams/{team_id}/members", "GET /teams/{team_id}/projects", "GET /teams/{team_id}/repos", "GET /teams/{team_id}/team-sync/group-mappings", "GET /teams/{team_id}/teams", "GET /user/blocks", "GET /user/emails", "GET /user/followers", "GET /user/following", "GET /user/gpg_keys", "GET /user/installations", "GET /user/installations/{installation_id}/repositories", "GET /user/issues", "GET /user/keys", "GET /user/marketplace_purchases", "GET /user/marketplace_purchases/stubbed", "GET /user/memberships/orgs", "GET /user/migrations", "GET /user/migrations/{migration_id}/repositories", "GET /user/orgs", "GET /user/public_emails", "GET /user/repos", "GET /user/repository_invitations", "GET /user/starred", "GET /user/subscriptions", "GET /user/teams", "GET /users", "GET /users/{username}/events", "GET /users/{username}/events/orgs/{org}", "GET /users/{username}/events/public", "GET /users/{username}/followers", "GET /users/{username}/following", "GET /users/{username}/gists", "GET /users/{username}/gpg_keys", "GET /users/{username}/keys", "GET /users/{username}/orgs", "GET /users/{username}/projects", "GET /users/{username}/received_events", "GET /users/{username}/received_events/public", "GET /users/{username}/repos", "GET /users/{username}/starred", "GET /users/{username}/subscriptions"];
|
||||
|
||||
function isPaginatingEndpoint(arg) {
|
||||
if (typeof arg === "string") {
|
||||
return paginatingEndpoints.includes(arg);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param octokit Octokit instance
|
||||
* @param options Options passed to Octokit constructor
|
||||
@ -3738,7 +3759,9 @@ function paginateRest(octokit) {
|
||||
paginateRest.VERSION = VERSION;
|
||||
|
||||
exports.composePaginateRest = composePaginateRest;
|
||||
exports.isPaginatingEndpoint = isPaginatingEndpoint;
|
||||
exports.paginateRest = paginateRest;
|
||||
exports.paginatingEndpoints = paginatingEndpoints;
|
||||
//# sourceMappingURL=index.js.map
|
||||
|
||||
|
||||
@ -3752,10 +3775,60 @@ exports.paginateRest = paginateRest;
|
||||
|
||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
|
||||
function _defineProperty(obj, key, value) {
|
||||
if (key in obj) {
|
||||
Object.defineProperty(obj, key, {
|
||||
value: value,
|
||||
enumerable: true,
|
||||
configurable: true,
|
||||
writable: true
|
||||
});
|
||||
} else {
|
||||
obj[key] = value;
|
||||
}
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
function ownKeys(object, enumerableOnly) {
|
||||
var keys = Object.keys(object);
|
||||
|
||||
if (Object.getOwnPropertySymbols) {
|
||||
var symbols = Object.getOwnPropertySymbols(object);
|
||||
if (enumerableOnly) symbols = symbols.filter(function (sym) {
|
||||
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
||||
});
|
||||
keys.push.apply(keys, symbols);
|
||||
}
|
||||
|
||||
return keys;
|
||||
}
|
||||
|
||||
function _objectSpread2(target) {
|
||||
for (var i = 1; i < arguments.length; i++) {
|
||||
var source = arguments[i] != null ? arguments[i] : {};
|
||||
|
||||
if (i % 2) {
|
||||
ownKeys(Object(source), true).forEach(function (key) {
|
||||
_defineProperty(target, key, source[key]);
|
||||
});
|
||||
} else if (Object.getOwnPropertyDescriptors) {
|
||||
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
||||
} else {
|
||||
ownKeys(Object(source)).forEach(function (key) {
|
||||
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return target;
|
||||
}
|
||||
|
||||
const Endpoints = {
|
||||
actions: {
|
||||
addSelectedRepoToOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],
|
||||
cancelWorkflowRun: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],
|
||||
createOrUpdateEnvironmentSecret: ["PUT /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],
|
||||
createOrUpdateOrgSecret: ["PUT /orgs/{org}/actions/secrets/{secret_name}"],
|
||||
createOrUpdateRepoSecret: ["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],
|
||||
createRegistrationTokenForOrg: ["POST /orgs/{org}/actions/runners/registration-token"],
|
||||
@ -3764,6 +3837,7 @@ const Endpoints = {
|
||||
createRemoveTokenForRepo: ["POST /repos/{owner}/{repo}/actions/runners/remove-token"],
|
||||
createWorkflowDispatch: ["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],
|
||||
deleteArtifact: ["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],
|
||||
deleteEnvironmentSecret: ["DELETE /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],
|
||||
deleteOrgSecret: ["DELETE /orgs/{org}/actions/secrets/{secret_name}"],
|
||||
deleteRepoSecret: ["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],
|
||||
deleteSelfHostedRunnerFromOrg: ["DELETE /orgs/{org}/actions/runners/{runner_id}"],
|
||||
@ -3780,16 +3854,20 @@ const Endpoints = {
|
||||
getAllowedActionsOrganization: ["GET /orgs/{org}/actions/permissions/selected-actions"],
|
||||
getAllowedActionsRepository: ["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],
|
||||
getArtifact: ["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],
|
||||
getEnvironmentPublicKey: ["GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key"],
|
||||
getEnvironmentSecret: ["GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}"],
|
||||
getGithubActionsPermissionsOrganization: ["GET /orgs/{org}/actions/permissions"],
|
||||
getGithubActionsPermissionsRepository: ["GET /repos/{owner}/{repo}/actions/permissions"],
|
||||
getJobForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],
|
||||
getOrgPublicKey: ["GET /orgs/{org}/actions/secrets/public-key"],
|
||||
getOrgSecret: ["GET /orgs/{org}/actions/secrets/{secret_name}"],
|
||||
getPendingDeploymentsForRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],
|
||||
getRepoPermissions: ["GET /repos/{owner}/{repo}/actions/permissions", {}, {
|
||||
renamed: ["actions", "getGithubActionsPermissionsRepository"]
|
||||
}],
|
||||
getRepoPublicKey: ["GET /repos/{owner}/{repo}/actions/secrets/public-key"],
|
||||
getRepoSecret: ["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],
|
||||
getReviewsForRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],
|
||||
getSelfHostedRunnerForOrg: ["GET /orgs/{org}/actions/runners/{runner_id}"],
|
||||
getSelfHostedRunnerForRepo: ["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],
|
||||
getWorkflow: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],
|
||||
@ -3797,6 +3875,7 @@ const Endpoints = {
|
||||
getWorkflowRunUsage: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],
|
||||
getWorkflowUsage: ["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],
|
||||
listArtifactsForRepo: ["GET /repos/{owner}/{repo}/actions/artifacts"],
|
||||
listEnvironmentSecrets: ["GET /repositories/{repository_id}/environments/{environment_name}/secrets"],
|
||||
listJobsForWorkflowRun: ["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],
|
||||
listOrgSecrets: ["GET /orgs/{org}/actions/secrets"],
|
||||
listRepoSecrets: ["GET /repos/{owner}/{repo}/actions/secrets"],
|
||||
@ -3812,6 +3891,7 @@ const Endpoints = {
|
||||
listWorkflowRunsForRepo: ["GET /repos/{owner}/{repo}/actions/runs"],
|
||||
reRunWorkflow: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],
|
||||
removeSelectedRepoFromOrgSecret: ["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],
|
||||
reviewPendingDeploymentsForRun: ["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],
|
||||
setAllowedActionsOrganization: ["PUT /orgs/{org}/actions/permissions/selected-actions"],
|
||||
setAllowedActionsRepository: ["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],
|
||||
setGithubActionsPermissionsOrganization: ["PUT /orgs/{org}/actions/permissions"],
|
||||
@ -3914,12 +3994,16 @@ const Endpoints = {
|
||||
update: ["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]
|
||||
},
|
||||
codeScanning: {
|
||||
deleteAnalysis: ["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],
|
||||
getAlert: ["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}", {}, {
|
||||
renamedParameters: {
|
||||
alert_id: "alert_number"
|
||||
}
|
||||
}],
|
||||
getAnalysis: ["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],
|
||||
getSarif: ["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],
|
||||
listAlertsForRepo: ["GET /repos/{owner}/{repo}/code-scanning/alerts"],
|
||||
listAlertsInstances: ["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],
|
||||
listRecentAnalyses: ["GET /repos/{owner}/{repo}/code-scanning/analyses"],
|
||||
updateAlert: ["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],
|
||||
uploadSarif: ["POST /repos/{owner}/{repo}/code-scanning/sarifs"]
|
||||
@ -3996,15 +4080,24 @@ const Endpoints = {
|
||||
getTemplate: ["GET /gitignore/templates/{name}"]
|
||||
},
|
||||
interactions: {
|
||||
getRestrictionsForAuthenticatedUser: ["GET /user/interaction-limits"],
|
||||
getRestrictionsForOrg: ["GET /orgs/{org}/interaction-limits"],
|
||||
getRestrictionsForRepo: ["GET /repos/{owner}/{repo}/interaction-limits"],
|
||||
getRestrictionsForYourPublicRepos: ["GET /user/interaction-limits"],
|
||||
getRestrictionsForYourPublicRepos: ["GET /user/interaction-limits", {}, {
|
||||
renamed: ["interactions", "getRestrictionsForAuthenticatedUser"]
|
||||
}],
|
||||
removeRestrictionsForAuthenticatedUser: ["DELETE /user/interaction-limits"],
|
||||
removeRestrictionsForOrg: ["DELETE /orgs/{org}/interaction-limits"],
|
||||
removeRestrictionsForRepo: ["DELETE /repos/{owner}/{repo}/interaction-limits"],
|
||||
removeRestrictionsForYourPublicRepos: ["DELETE /user/interaction-limits"],
|
||||
removeRestrictionsForYourPublicRepos: ["DELETE /user/interaction-limits", {}, {
|
||||
renamed: ["interactions", "removeRestrictionsForAuthenticatedUser"]
|
||||
}],
|
||||
setRestrictionsForAuthenticatedUser: ["PUT /user/interaction-limits"],
|
||||
setRestrictionsForOrg: ["PUT /orgs/{org}/interaction-limits"],
|
||||
setRestrictionsForRepo: ["PUT /repos/{owner}/{repo}/interaction-limits"],
|
||||
setRestrictionsForYourPublicRepos: ["PUT /user/interaction-limits"]
|
||||
setRestrictionsForYourPublicRepos: ["PUT /user/interaction-limits", {}, {
|
||||
renamed: ["interactions", "setRestrictionsForAuthenticatedUser"]
|
||||
}]
|
||||
},
|
||||
issues: {
|
||||
addAssignees: ["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],
|
||||
@ -4144,6 +4237,7 @@ const Endpoints = {
|
||||
},
|
||||
orgs: {
|
||||
blockUser: ["PUT /orgs/{org}/blocks/{username}"],
|
||||
cancelInvitation: ["DELETE /orgs/{org}/invitations/{invitation_id}"],
|
||||
checkBlockedUser: ["GET /orgs/{org}/blocks/{username}"],
|
||||
checkMembershipForUser: ["GET /orgs/{org}/members/{username}"],
|
||||
checkPublicMembershipForUser: ["GET /orgs/{org}/public_members/{username}"],
|
||||
@ -4159,6 +4253,7 @@ const Endpoints = {
|
||||
list: ["GET /organizations"],
|
||||
listAppInstallations: ["GET /orgs/{org}/installations"],
|
||||
listBlockedUsers: ["GET /orgs/{org}/blocks"],
|
||||
listFailedInvitations: ["GET /orgs/{org}/failed_invitations"],
|
||||
listForAuthenticatedUser: ["GET /user/orgs"],
|
||||
listForUser: ["GET /users/{username}/orgs"],
|
||||
listInvitationTeams: ["GET /orgs/{org}/invitations/{invitation_id}/teams"],
|
||||
@ -4181,6 +4276,31 @@ const Endpoints = {
|
||||
updateWebhook: ["PATCH /orgs/{org}/hooks/{hook_id}"],
|
||||
updateWebhookConfigForOrg: ["PATCH /orgs/{org}/hooks/{hook_id}/config"]
|
||||
},
|
||||
packages: {
|
||||
deletePackageForAuthenticatedUser: ["DELETE /user/packages/{package_type}/{package_name}"],
|
||||
deletePackageForOrg: ["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],
|
||||
deletePackageVersionForAuthenticatedUser: ["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],
|
||||
deletePackageVersionForOrg: ["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
|
||||
getAllPackageVersionsForAPackageOwnedByAnOrg: ["GET /orgs/{org}/packages/{package_type}/{package_name}/versions", {}, {
|
||||
renamed: ["packages", "getAllPackageVersionsForPackageOwnedByOrg"]
|
||||
}],
|
||||
getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}/versions", {}, {
|
||||
renamed: ["packages", "getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]
|
||||
}],
|
||||
getAllPackageVersionsForPackageOwnedByAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}/versions"],
|
||||
getAllPackageVersionsForPackageOwnedByOrg: ["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],
|
||||
getAllPackageVersionsForPackageOwnedByUser: ["GET /users/{username}/packages/{package_type}/{package_name}/versions"],
|
||||
getPackageForAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}"],
|
||||
getPackageForOrganization: ["GET /orgs/{org}/packages/{package_type}/{package_name}"],
|
||||
getPackageForUser: ["GET /users/{username}/packages/{package_type}/{package_name}"],
|
||||
getPackageVersionForAuthenticatedUser: ["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],
|
||||
getPackageVersionForOrganization: ["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
|
||||
getPackageVersionForUser: ["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],
|
||||
restorePackageForAuthenticatedUser: ["POST /user/packages/{package_type}/{package_name}/restore{?token}"],
|
||||
restorePackageForOrg: ["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],
|
||||
restorePackageVersionForAuthenticatedUser: ["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],
|
||||
restorePackageVersionForOrg: ["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]
|
||||
},
|
||||
projects: {
|
||||
addCollaborator: ["PUT /projects/{project_id}/collaborators/{username}", {
|
||||
mediaType: {
|
||||
@ -4410,7 +4530,7 @@ const Endpoints = {
|
||||
previews: ["squirrel-girl"]
|
||||
}
|
||||
}, {
|
||||
deprecated: "octokit.reactions.deleteLegacy() is deprecated, see https://docs.github.com/v3/reactions/#delete-a-reaction-legacy"
|
||||
deprecated: "octokit.reactions.deleteLegacy() is deprecated, see https://docs.github.com/rest/reference/reactions/#delete-a-reaction-legacy"
|
||||
}],
|
||||
listForCommitComment: ["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions", {
|
||||
mediaType: {
|
||||
@ -4477,8 +4597,9 @@ const Endpoints = {
|
||||
createDeploymentStatus: ["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],
|
||||
createDispatchEvent: ["POST /repos/{owner}/{repo}/dispatches"],
|
||||
createForAuthenticatedUser: ["POST /user/repos"],
|
||||
createFork: ["POST /repos/{owner}/{repo}/forks"],
|
||||
createFork: ["POST /repos/{owner}/{repo}/forks{?org,organization}"],
|
||||
createInOrg: ["POST /orgs/{org}/repos"],
|
||||
createOrUpdateEnvironment: ["PUT /repos/{owner}/{repo}/environments/{environment_name}"],
|
||||
createOrUpdateFileContents: ["PUT /repos/{owner}/{repo}/contents/{path}"],
|
||||
createPagesSite: ["POST /repos/{owner}/{repo}/pages", {
|
||||
mediaType: {
|
||||
@ -4496,6 +4617,7 @@ const Endpoints = {
|
||||
delete: ["DELETE /repos/{owner}/{repo}"],
|
||||
deleteAccessRestrictions: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],
|
||||
deleteAdminBranchProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],
|
||||
deleteAnEnvironment: ["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],
|
||||
deleteBranchProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],
|
||||
deleteCommitComment: ["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],
|
||||
deleteCommitSignatureProtection: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures", {
|
||||
@ -4544,6 +4666,7 @@ const Endpoints = {
|
||||
get: ["GET /repos/{owner}/{repo}"],
|
||||
getAccessRestrictions: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],
|
||||
getAdminBranchProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],
|
||||
getAllEnvironments: ["GET /repos/{owner}/{repo}/environments"],
|
||||
getAllStatusCheckContexts: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],
|
||||
getAllTopics: ["GET /repos/{owner}/{repo}/topics", {
|
||||
mediaType: {
|
||||
@ -4571,6 +4694,7 @@ const Endpoints = {
|
||||
getDeployKey: ["GET /repos/{owner}/{repo}/keys/{key_id}"],
|
||||
getDeployment: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],
|
||||
getDeploymentStatus: ["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],
|
||||
getEnvironment: ["GET /repos/{owner}/{repo}/environments/{environment_name}"],
|
||||
getLatestPagesBuild: ["GET /repos/{owner}/{repo}/pages/builds/latest"],
|
||||
getLatestRelease: ["GET /repos/{owner}/{repo}/releases/latest"],
|
||||
getPages: ["GET /repos/{owner}/{repo}/pages"],
|
||||
@ -4579,6 +4703,7 @@ const Endpoints = {
|
||||
getPullRequestReviewProtection: ["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],
|
||||
getPunchCardStats: ["GET /repos/{owner}/{repo}/stats/punch_card"],
|
||||
getReadme: ["GET /repos/{owner}/{repo}/readme"],
|
||||
getReadmeInDirectory: ["GET /repos/{owner}/{repo}/readme/{dir}"],
|
||||
getRelease: ["GET /repos/{owner}/{repo}/releases/{release_id}"],
|
||||
getReleaseAsset: ["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],
|
||||
getReleaseByTag: ["GET /repos/{owner}/{repo}/releases/tags/{tag}"],
|
||||
@ -4640,6 +4765,7 @@ const Endpoints = {
|
||||
removeUserAccessRestrictions: ["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users", {}, {
|
||||
mapToData: "users"
|
||||
}],
|
||||
renameBranch: ["POST /repos/{owner}/{repo}/branches/{branch}/rename"],
|
||||
replaceAllTopics: ["PUT /repos/{owner}/{repo}/topics", {
|
||||
mediaType: {
|
||||
previews: ["mercy"]
|
||||
@ -4781,7 +4907,7 @@ const Endpoints = {
|
||||
}
|
||||
};
|
||||
|
||||
const VERSION = "4.5.2";
|
||||
const VERSION = "5.0.0";
|
||||
|
||||
function endpointsToMethods(octokit, endpointsMap) {
|
||||
const newMethods = {};
|
||||
@ -4864,22 +4990,22 @@ function decorate(octokit, scope, methodName, defaults, decorations) {
|
||||
return Object.assign(withDecorations, requestWithDefaults);
|
||||
}
|
||||
|
||||
/**
|
||||
* This plugin is a 1:1 copy of internal @octokit/rest plugins. The primary
|
||||
* goal is to rebuild @octokit/rest on top of @octokit/core. Once that is
|
||||
* done, we will remove the registerEndpoints methods and return the methods
|
||||
* directly as with the other plugins. At that point we will also remove the
|
||||
* legacy workarounds and deprecations.
|
||||
*
|
||||
* See the plan at
|
||||
* https://github.com/octokit/plugin-rest-endpoint-methods.js/pull/1
|
||||
*/
|
||||
|
||||
function restEndpointMethods(octokit) {
|
||||
return endpointsToMethods(octokit, Endpoints);
|
||||
const api = endpointsToMethods(octokit, Endpoints);
|
||||
return {
|
||||
rest: api
|
||||
};
|
||||
}
|
||||
restEndpointMethods.VERSION = VERSION;
|
||||
function legacyRestEndpointMethods(octokit) {
|
||||
const api = endpointsToMethods(octokit, Endpoints);
|
||||
return _objectSpread2(_objectSpread2({}, api), {}, {
|
||||
rest: api
|
||||
});
|
||||
}
|
||||
legacyRestEndpointMethods.VERSION = VERSION;
|
||||
|
||||
exports.legacyRestEndpointMethods = legacyRestEndpointMethods;
|
||||
exports.restEndpointMethods = restEndpointMethods;
|
||||
//# sourceMappingURL=index.js.map
|
||||
|
||||
@ -4965,7 +5091,7 @@ var isPlainObject = __nccwpck_require__(62);
|
||||
var nodeFetch = _interopDefault(__nccwpck_require__(467));
|
||||
var requestError = __nccwpck_require__(537);
|
||||
|
||||
const VERSION = "5.4.12";
|
||||
const VERSION = "5.4.14";
|
||||
|
||||
function getBufferResponse(response) {
|
||||
return response.arrayBuffer();
|
||||
@ -5218,51 +5344,51 @@ module.exports.Collection = Hook.Collection
|
||||
/***/ 549:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = addHook
|
||||
module.exports = addHook;
|
||||
|
||||
function addHook (state, kind, name, hook) {
|
||||
var orig = hook
|
||||
function addHook(state, kind, name, hook) {
|
||||
var orig = hook;
|
||||
if (!state.registry[name]) {
|
||||
state.registry[name] = []
|
||||
state.registry[name] = [];
|
||||
}
|
||||
|
||||
if (kind === 'before') {
|
||||
if (kind === "before") {
|
||||
hook = function (method, options) {
|
||||
return Promise.resolve()
|
||||
.then(orig.bind(null, options))
|
||||
.then(method.bind(null, options))
|
||||
}
|
||||
.then(method.bind(null, options));
|
||||
};
|
||||
}
|
||||
|
||||
if (kind === 'after') {
|
||||
if (kind === "after") {
|
||||
hook = function (method, options) {
|
||||
var result
|
||||
var result;
|
||||
return Promise.resolve()
|
||||
.then(method.bind(null, options))
|
||||
.then(function (result_) {
|
||||
result = result_
|
||||
return orig(result, options)
|
||||
result = result_;
|
||||
return orig(result, options);
|
||||
})
|
||||
.then(function () {
|
||||
return result
|
||||
})
|
||||
}
|
||||
return result;
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
if (kind === 'error') {
|
||||
if (kind === "error") {
|
||||
hook = function (method, options) {
|
||||
return Promise.resolve()
|
||||
.then(method.bind(null, options))
|
||||
.catch(function (error) {
|
||||
return orig(error, options)
|
||||
})
|
||||
}
|
||||
return orig(error, options);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
state.registry[name].push({
|
||||
hook: hook,
|
||||
orig: orig
|
||||
})
|
||||
orig: orig,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -5271,33 +5397,32 @@ function addHook (state, kind, name, hook) {
|
||||
/***/ 670:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = register
|
||||
module.exports = register;
|
||||
|
||||
function register (state, name, method, options) {
|
||||
if (typeof method !== 'function') {
|
||||
throw new Error('method for before hook must be a function')
|
||||
function register(state, name, method, options) {
|
||||
if (typeof method !== "function") {
|
||||
throw new Error("method for before hook must be a function");
|
||||
}
|
||||
|
||||
if (!options) {
|
||||
options = {}
|
||||
options = {};
|
||||
}
|
||||
|
||||
if (Array.isArray(name)) {
|
||||
return name.reverse().reduce(function (callback, name) {
|
||||
return register.bind(null, state, name, callback, options)
|
||||
}, method)()
|
||||
return register.bind(null, state, name, callback, options);
|
||||
}, method)();
|
||||
}
|
||||
|
||||
return Promise.resolve()
|
||||
.then(function () {
|
||||
if (!state.registry[name]) {
|
||||
return method(options)
|
||||
}
|
||||
return Promise.resolve().then(function () {
|
||||
if (!state.registry[name]) {
|
||||
return method(options);
|
||||
}
|
||||
|
||||
return (state.registry[name]).reduce(function (method, registered) {
|
||||
return registered.hook.bind(null, method, options)
|
||||
}, method)()
|
||||
})
|
||||
return state.registry[name].reduce(function (method, registered) {
|
||||
return registered.hook.bind(null, method, options);
|
||||
}, method)();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -5306,22 +5431,24 @@ function register (state, name, method, options) {
|
||||
/***/ 819:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = removeHook
|
||||
module.exports = removeHook;
|
||||
|
||||
function removeHook (state, name, method) {
|
||||
function removeHook(state, name, method) {
|
||||
if (!state.registry[name]) {
|
||||
return
|
||||
return;
|
||||
}
|
||||
|
||||
var index = state.registry[name]
|
||||
.map(function (registered) { return registered.orig })
|
||||
.indexOf(method)
|
||||
.map(function (registered) {
|
||||
return registered.orig;
|
||||
})
|
||||
.indexOf(method);
|
||||
|
||||
if (index === -1) {
|
||||
return
|
||||
return;
|
||||
}
|
||||
|
||||
state.registry[name].splice(index, 1)
|
||||
state.registry[name].splice(index, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -16,6 +16,7 @@ This document covers terminology, how the action works, general usage guidelines
|
||||
- [Push using SSH (deploy keys)](#push-using-ssh-deploy-keys)
|
||||
- [Push pull request branches to a fork](#push-pull-request-branches-to-a-fork)
|
||||
- [Authenticating with GitHub App generated tokens](#authenticating-with-github-app-generated-tokens)
|
||||
- [GPG commit signature verification](#gpg-commit-signature-verification)
|
||||
- [Running in a container or on self-hosted runners](#running-in-a-container-or-on-self-hosted-runners)
|
||||
|
||||
## Terminology
|
||||
@ -129,6 +130,8 @@ jobs:
|
||||
if: github.event.pull_request.head.repo.full_name == github.repository
|
||||
```
|
||||
|
||||
For further reading regarding the security of pull requests, see this GitHub blog post titled [Keeping your GitHub Actions and workflows secure: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)
|
||||
|
||||
### Triggering further workflow runs
|
||||
|
||||
Pull requests created by the action using the default `GITHUB_TOKEN` cannot trigger other workflows. If you have `on: pull_request` or `on: push` workflows acting as checks on pull requests, they will not run.
|
||||
@ -272,6 +275,49 @@ GitHub App generated tokens are more secure than using a PAT because GitHub App
|
||||
token: ${{ steps.generate-token.outputs.token }}
|
||||
```
|
||||
|
||||
### GPG commit signature verification
|
||||
|
||||
The action can use GPG to sign commits with a GPG key that you generate yourself.
|
||||
|
||||
1. Follow GitHub's guide to [generate a new GPG key](https://docs.github.com/en/github/authenticating-to-github/generating-a-new-gpg-key).
|
||||
|
||||
2. [Add the public key](https://docs.github.com/en/github/authenticating-to-github/adding-a-new-gpg-key-to-your-github-account) to the user account associated with the [Personal Access Token (PAT)](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token) that you will use with the action.
|
||||
|
||||
3. Copy the private key to your clipboard, replacing `email@example.com` with the email address of your GPG key.
|
||||
```
|
||||
# macOS
|
||||
gpg --armor --export-secret-key email@example.com | pbcopy
|
||||
```
|
||||
|
||||
4. Paste the private key into a repository secret where the workflow will run. e.g. `GPG_PRIVATE_KEY`
|
||||
|
||||
5. Create another repository secret for the key's passphrase, if applicable. e.g. `GPG_PASSPHRASE`
|
||||
|
||||
6. The following example workflow shows how to use [crazy-max/ghaction-import-gpg](https://github.com/crazy-max/ghaction-import-gpg) to import your GPG key and instruct the action to sign commits by setting the `gpg-sign` input to `true`.
|
||||
|
||||
Note that the `committer` email address *MUST* match the email address used to create your GPG key.
|
||||
|
||||
```yaml
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- uses: crazy-max/ghaction-import-gpg@v3
|
||||
with:
|
||||
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }}
|
||||
passphrase: ${{ secrets.GPG_PASSPHRASE }}
|
||||
git-user-signingkey: true
|
||||
git-commit-gpgsign: true
|
||||
|
||||
# Make changes to pull request here
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
with:
|
||||
token: ${{ secrets.PAT }}
|
||||
committer: example <email@example.com>
|
||||
gpg-sign: true
|
||||
```
|
||||
|
||||
### Running in a container or on self-hosted runners
|
||||
|
||||
This action can be run inside a container, or on [self-hosted runners](https://docs.github.com/en/actions/hosting-your-own-runners), by installing the necessary dependencies.
|
||||
|
@ -21,6 +21,7 @@
|
||||
- [Filtering push events](#filtering-push-events)
|
||||
- [Dynamic configuration using variables](#dynamic-configuration-using-variables)
|
||||
- [Setting the pull request body from a file](#setting-the-pull-request-body-from-a-file)
|
||||
- [Using a markdown template](#using-a-markdown-template)
|
||||
- [Debugging GitHub Actions](#debugging-github-actions)
|
||||
|
||||
|
||||
@ -560,6 +561,31 @@ The content must be [escaped to preserve newlines](https://github.community/t/se
|
||||
body: ${{ steps.get-pr-body.outputs.body }}
|
||||
```
|
||||
|
||||
### Using a markdown template
|
||||
|
||||
In this example, a markdown template file is added to the repository at `.github/pull-request-template.md` with the following content.
|
||||
```
|
||||
This is a test pull request template
|
||||
Render template variables such as {{ .foo }} and {{ .bar }}.
|
||||
```
|
||||
|
||||
The template is rendered using the [render-template](https://github.com/chuhlomin/render-template) action and the result is used to create the pull request.
|
||||
```yml
|
||||
- name: Render template
|
||||
id: template
|
||||
uses: chuhlomin/render-template@v1.2
|
||||
with:
|
||||
template: .github/pull-request-template.md
|
||||
vars: |
|
||||
foo: this
|
||||
bar: that
|
||||
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v3
|
||||
with:
|
||||
body: ${{ steps.template.outputs.result }}
|
||||
```
|
||||
|
||||
### Debugging GitHub Actions
|
||||
|
||||
#### Runner Diagnostic Logging
|
||||
|
8809
package-lock.json
generated
8809
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
22
package.json
22
package.json
@ -31,24 +31,24 @@
|
||||
"dependencies": {
|
||||
"@actions/core": "1.2.6",
|
||||
"@actions/exec": "1.0.4",
|
||||
"@octokit/core": "3.2.4",
|
||||
"@octokit/plugin-paginate-rest": "2.8.0",
|
||||
"@octokit/plugin-rest-endpoint-methods": "4.5.2",
|
||||
"@octokit/core": "3.3.2",
|
||||
"@octokit/plugin-paginate-rest": "2.13.3",
|
||||
"@octokit/plugin-rest-endpoint-methods": "5.0.0",
|
||||
"uuid": "8.3.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/jest": "26.0.20",
|
||||
"@types/node": "14.14.22",
|
||||
"@typescript-eslint/parser": "4.14.0",
|
||||
"@types/jest": "26.0.22",
|
||||
"@types/node": "14.14.37",
|
||||
"@typescript-eslint/parser": "4.20.0",
|
||||
"@vercel/ncc": "0.27.0",
|
||||
"eslint": "7.18.0",
|
||||
"eslint-plugin-github": "4.1.1",
|
||||
"eslint-plugin-jest": "24.1.3",
|
||||
"eslint": "7.23.0",
|
||||
"eslint-plugin-github": "4.1.2",
|
||||
"eslint-plugin-jest": "24.3.2",
|
||||
"jest": "26.6.3",
|
||||
"jest-circus": "26.6.3",
|
||||
"js-yaml": "4.0.0",
|
||||
"prettier": "2.2.1",
|
||||
"ts-jest": "26.4.4",
|
||||
"typescript": "4.1.3"
|
||||
"ts-jest": "26.5.4",
|
||||
"typescript": "4.2.3"
|
||||
}
|
||||
}
|
||||
|
@ -91,7 +91,8 @@ export async function createOrUpdateBranch(
|
||||
base: string,
|
||||
branch: string,
|
||||
branchRemoteName: string,
|
||||
signoff: boolean
|
||||
signoff: boolean,
|
||||
gpgSign: boolean
|
||||
): Promise<CreateOrUpdateBranchResult> {
|
||||
// Get the working base.
|
||||
// When a ref, it may or may not be the actual base.
|
||||
@ -124,6 +125,9 @@ export async function createOrUpdateBranch(
|
||||
if (signoff) {
|
||||
params.push('--signoff')
|
||||
}
|
||||
if (gpgSign) {
|
||||
params.push('--gpg-sign')
|
||||
}
|
||||
await git.commit(params)
|
||||
}
|
||||
|
||||
|
@ -16,6 +16,7 @@ export interface Inputs {
|
||||
committer: string
|
||||
author: string
|
||||
signoff: boolean
|
||||
gpgSign: boolean
|
||||
branch: string
|
||||
deleteBranch: boolean
|
||||
branchSuffix: string
|
||||
@ -173,7 +174,8 @@ export async function createPullRequest(inputs: Inputs): Promise<void> {
|
||||
inputs.base,
|
||||
inputs.branch,
|
||||
branchRemoteName,
|
||||
inputs.signoff
|
||||
inputs.signoff,
|
||||
inputs.gpgSign
|
||||
)
|
||||
core.endGroup()
|
||||
|
||||
|
@ -43,7 +43,7 @@ export class GitHubHelper {
|
||||
): Promise<Pull> {
|
||||
// Try to create the pull request
|
||||
try {
|
||||
const {data: pull} = await this.octokit.pulls.create({
|
||||
const {data: pull} = await this.octokit.rest.pulls.create({
|
||||
...this.parseRepository(baseRepository),
|
||||
title: inputs.title,
|
||||
head: headBranch,
|
||||
@ -71,13 +71,13 @@ export class GitHubHelper {
|
||||
}
|
||||
|
||||
// Update the pull request that exists for this branch and base
|
||||
const {data: pulls} = await this.octokit.pulls.list({
|
||||
const {data: pulls} = await this.octokit.rest.pulls.list({
|
||||
...this.parseRepository(baseRepository),
|
||||
state: 'open',
|
||||
head: headBranch,
|
||||
base: inputs.base
|
||||
})
|
||||
const {data: pull} = await this.octokit.pulls.update({
|
||||
const {data: pull} = await this.octokit.rest.pulls.update({
|
||||
...this.parseRepository(baseRepository),
|
||||
pull_number: pulls[0].number,
|
||||
title: inputs.title,
|
||||
@ -95,7 +95,7 @@ export class GitHubHelper {
|
||||
}
|
||||
|
||||
async getRepositoryParent(headRepository: string): Promise<string> {
|
||||
const {data: headRepo} = await this.octokit.repos.get({
|
||||
const {data: headRepo} = await this.octokit.rest.repos.get({
|
||||
...this.parseRepository(headRepository)
|
||||
})
|
||||
if (!headRepo.parent) {
|
||||
@ -117,25 +117,31 @@ export class GitHubHelper {
|
||||
// Create or update the pull request
|
||||
const pull = await this.createOrUpdate(inputs, baseRepository, headBranch)
|
||||
|
||||
// Set milestone, labels and assignees
|
||||
const updateIssueParams = {}
|
||||
// Apply milestone
|
||||
if (inputs.milestone) {
|
||||
updateIssueParams['milestone'] = inputs.milestone
|
||||
core.info(`Applying milestone '${inputs.milestone}'`)
|
||||
}
|
||||
if (inputs.labels.length > 0) {
|
||||
updateIssueParams['labels'] = inputs.labels
|
||||
core.info(`Applying labels '${inputs.labels}'`)
|
||||
}
|
||||
if (inputs.assignees.length > 0) {
|
||||
updateIssueParams['assignees'] = inputs.assignees
|
||||
core.info(`Applying assignees '${inputs.assignees}'`)
|
||||
}
|
||||
if (Object.keys(updateIssueParams).length > 0) {
|
||||
await this.octokit.issues.update({
|
||||
await this.octokit.rest.issues.update({
|
||||
...this.parseRepository(baseRepository),
|
||||
issue_number: pull.number,
|
||||
...updateIssueParams
|
||||
milestone: inputs.milestone
|
||||
})
|
||||
}
|
||||
// Apply labels
|
||||
if (inputs.labels.length > 0) {
|
||||
core.info(`Applying labels '${inputs.labels}'`)
|
||||
await this.octokit.rest.issues.addLabels({
|
||||
...this.parseRepository(baseRepository),
|
||||
issue_number: pull.number,
|
||||
labels: inputs.labels
|
||||
})
|
||||
}
|
||||
// Apply assignees
|
||||
if (inputs.assignees.length > 0) {
|
||||
core.info(`Applying assignees '${inputs.assignees}'`)
|
||||
await this.octokit.rest.issues.addAssignees({
|
||||
...this.parseRepository(baseRepository),
|
||||
issue_number: pull.number,
|
||||
assignees: inputs.assignees
|
||||
})
|
||||
}
|
||||
|
||||
@ -151,7 +157,7 @@ export class GitHubHelper {
|
||||
}
|
||||
if (Object.keys(requestReviewersParams).length > 0) {
|
||||
try {
|
||||
await this.octokit.pulls.requestReviewers({
|
||||
await this.octokit.rest.pulls.requestReviewers({
|
||||
...this.parseRepository(baseRepository),
|
||||
pull_number: pull.number,
|
||||
...requestReviewersParams
|
||||
|
@ -12,6 +12,7 @@ async function run(): Promise<void> {
|
||||
committer: core.getInput('committer'),
|
||||
author: core.getInput('author'),
|
||||
signoff: core.getInput('signoff') === 'true',
|
||||
gpgSign: core.getInput('gpg-sign') === 'true',
|
||||
branch: core.getInput('branch'),
|
||||
deleteBranch: core.getInput('delete-branch') === 'true',
|
||||
branchSuffix: core.getInput('branch-suffix'),
|
||||
|
Reference in New Issue
Block a user