diff --git a/CHANGELOG.md b/CHANGELOG.md index 7e03096..982cad4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## v2.1.1 + +`2021.02.03` + +- fix: api request limit. [#57](https://github.com/actions-cool/issues-helper/pull/57) +- chore: add catch. [#59](https://github.com/actions-cool/issues-helper/pull/59) + ## v2.1.0 `2021.02.02` diff --git a/README.en-US.md b/README.en-US.md index d1940b4..a6cffb3 100644 --- a/README.en-US.md +++ b/README.en-US.md @@ -149,7 +149,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Add assigness - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -191,7 +191,7 @@ jobs: if: contains(github.event.issue.body, 'xxx') == false steps: - name: Add labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -216,7 +216,7 @@ Close the specified issue. ```yml - name: Close issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -249,7 +249,7 @@ jobs: if: github.event.label.name == 'xxx' steps: - name: Create comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -293,7 +293,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Create issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -326,7 +326,7 @@ Create label。If you want to create multiple labels base on repository path. [S ```yml - name: Create label - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-label' token: ${{ secrets.GITHUB_TOKEN }} @@ -354,7 +354,7 @@ According to [`comment-id`](#comment-id) delete the specified comment. ```yml - name: Delete comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'delete-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -386,7 +386,7 @@ jobs: if: github.event.label.name == 'invalid' steps: - name: Lock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -420,7 +420,7 @@ jobs: runs-on: ubuntu-latest steps: - name: mark-duplicate - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'mark-duplicate' token: ${{ secrets.GITHUB_TOKEN }} @@ -455,7 +455,7 @@ Open the specified issue. ```yml - name: Open issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'open-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -476,7 +476,7 @@ Remove the person designated by issue. ```yml - name: Remove assignees - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -499,7 +499,7 @@ Remove the specified labels. ```yml - name: Remove labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -524,7 +524,7 @@ Replace the labels of issue. ```yml - name: Set labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'set-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -547,7 +547,7 @@ Unlock the specified issue. ```yml - name: Unlock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'unlock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -580,7 +580,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Update comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -608,7 +608,7 @@ Update the specified issue according to the `issue-number`. ```yml - name: Update issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -658,7 +658,7 @@ jobs: runs-on: ubuntu-latest steps: - name: welcome - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'welcome' token: ${{ secrets.GITHUB_TOKEN }} @@ -701,7 +701,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-inactive - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-inactive' token: ${{ secrets.GITHUB_TOKEN }} @@ -754,7 +754,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -793,7 +793,7 @@ jobs: runs-on: ubuntu-latest steps: - name: close-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -827,7 +827,7 @@ Find the current warehouse issue No. 1, the creator is k and the content contain ```yml - name: Find comments - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'find-comments' token: ${{ secrets.GITHUB_TOKEN }} @@ -875,7 +875,7 @@ jobs: runs-on: ubuntu-latest steps: - name: lock-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -922,7 +922,7 @@ jobs: runs-on: ubuntu-latest steps: - name: month-statistics - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'month-statistics' token: ${{ secrets.GITHUB_TOKEN }} @@ -965,7 +965,7 @@ jobs: if: github.event.label.name == 'watch' steps: - name: find comments - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 id: fcid with: actions: 'find-comments' @@ -976,7 +976,7 @@ jobs: - name: create comment if: ${{ steps.fcid.outputs.comments.length == 0 }} - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -985,7 +985,7 @@ jobs: - name: update comment if: ${{ steps.fcid.outputs.comments.length == 1 }} - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -1017,7 +1017,7 @@ When the token is not filled in actions or the corresponding secrets are not add ```yml - name: Create issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 id: createissue with: actions: 'create-issue' diff --git a/README.md b/README.md index 89a8330..e66af3d 100644 --- a/README.md +++ b/README.md @@ -149,7 +149,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Add assigness - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -191,7 +191,7 @@ jobs: if: contains(github.event.issue.body, 'xxx') == false steps: - name: Add labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -216,7 +216,7 @@ jobs: ```yml - name: Close issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -249,7 +249,7 @@ jobs: if: github.event.label.name == 'xxx' steps: - name: Create comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -293,7 +293,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Create issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -326,7 +326,7 @@ jobs: ```yml - name: Create label - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-label' token: ${{ secrets.GITHUB_TOKEN }} @@ -354,7 +354,7 @@ jobs: ```yml - name: Delete comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'delete-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -386,7 +386,7 @@ jobs: if: github.event.label.name == 'invalid' steps: - name: Lock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -420,7 +420,7 @@ jobs: runs-on: ubuntu-latest steps: - name: mark-duplicate - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'mark-duplicate' token: ${{ secrets.GITHUB_TOKEN }} @@ -455,7 +455,7 @@ jobs: ```yml - name: Open issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'open-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -476,7 +476,7 @@ jobs: ```yml - name: Remove assignees - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -499,7 +499,7 @@ jobs: ```yml - name: Remove labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -524,7 +524,7 @@ jobs: ```yml - name: Set labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'set-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -547,7 +547,7 @@ jobs: ```yml - name: Unlock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'unlock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -580,7 +580,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Update comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -608,7 +608,7 @@ jobs: ```yml - name: Update issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -656,7 +656,7 @@ jobs: runs-on: ubuntu-latest steps: - name: welcome - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'welcome' token: ${{ secrets.GITHUB_TOKEN }} @@ -699,7 +699,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-inactive - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-inactive' token: ${{ secrets.GITHUB_TOKEN }} @@ -748,7 +748,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -787,7 +787,7 @@ jobs: runs-on: ubuntu-latest steps: - name: close-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -821,7 +821,7 @@ jobs: ```yml - name: Find comments - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'find-comments' token: ${{ secrets.GITHUB_TOKEN }} @@ -869,7 +869,7 @@ jobs: runs-on: ubuntu-latest steps: - name: lock-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -916,7 +916,7 @@ jobs: runs-on: ubuntu-latest steps: - name: month-statistics - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'month-statistics' token: ${{ secrets.GITHUB_TOKEN }} @@ -959,7 +959,7 @@ jobs: if: github.event.label.name == 'watch' steps: - name: find comments - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 id: fcid with: actions: 'find-comments' @@ -970,7 +970,7 @@ jobs: - name: create comment if: ${{ steps.fcid.outputs.comments.length == 0 }} - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -979,7 +979,7 @@ jobs: - name: update comment if: ${{ steps.fcid.outputs.comments.length == 1 }} - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -1011,7 +1011,7 @@ jobs: ```yml - name: Create issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 id: createissue with: actions: 'create-issue' diff --git a/dist/index.js b/dist/index.js index 8024b52..9a49cb3 100644 --- a/dist/index.js +++ b/dist/index.js @@ -8005,7 +8005,7 @@ async function doCreateLabel(owner, repo) { }); core.info(`Actions: [create-label][${name}] success!`); } catch (err) { - console.log(err.message) + console.log(err.message); } } @@ -8053,17 +8053,6 @@ async function doMarkDuplicate(owner, repo, labels) { const ifCommandInput = !!duplicateCommand; - const res = await octokit.repos.getCollaboratorPermissionLevel({ - owner, - repo, - username: commentUser, - }); - const { permission } = res.data; - if (!checkPermission(requirePermission, permission)) { - core.info(`The user ${commentUser} is not allow!`); - return false; - } - if ( !commentBody.includes('?') && ((ifCommandInput && @@ -8071,37 +8060,52 @@ async function doMarkDuplicate(owner, repo, labels) { commentBody.split(' ')[0] == duplicateCommand) || testDuplicate(commentBody)) ) { - if (ifCommandInput) { - const nextBody = commentBody.replace(duplicateCommand, 'Duplicate of'); - await doUpdateComment(owner, repo, commentId, nextBody, 'replace', true); - } else if (contents) { - await doCreateCommentContent(owner, repo, commentId, dealStringToArr(contents)); - } + try { + const res = await octokit.repos.getCollaboratorPermissionLevel({ + owner, + repo, + username: commentUser, + }); + const { permission } = res.data; + if (!checkPermission(requirePermission, permission)) { + core.info(`The user ${commentUser} is not allow!`); + return false; + } - const issue = await octokit.issues.get({ - owner, - repo, - issue_number: issueNumber, - }); - let newLabels = []; - if (issue.data.labels.length > 0) { - newLabels = issue.data.labels - .map(({ name }) => name) - .filter(name => !dealStringToArr(removeLables).includes(name)); - } - if (duplicateLabels) { - newLabels = [...newLabels, ...dealStringToArr(duplicateLabels)]; - } - if (labels) { - newLabels = dealStringToArr(labels); - } - if (newLabels.length > 0) { - await doSetLabels(owner, repo, issueNumber, newLabels.toString()); - core.info(`Actions: [mark-duplicate-labels][${newLabels}] success!`); - } + if (ifCommandInput) { + const nextBody = commentBody.replace(duplicateCommand, 'Duplicate of'); + await doUpdateComment(owner, repo, commentId, nextBody, 'replace', true); + } else if (contents) { + await doCreateCommentContent(owner, repo, commentId, dealStringToArr(contents)); + } - if (closeIssue == 'true') { - await doCloseIssue(owner, repo, issueNumber); + const issue = await octokit.issues.get({ + owner, + repo, + issue_number: issueNumber, + }); + let newLabels = []; + if (issue.data.labels.length > 0) { + newLabels = issue.data.labels + .map(({ name }) => name) + .filter(name => !dealStringToArr(removeLables).includes(name)); + } + if (duplicateLabels) { + newLabels = [...newLabels, ...dealStringToArr(duplicateLabels)]; + } + if (labels) { + newLabels = dealStringToArr(labels); + } + if (newLabels.length > 0) { + await doSetLabels(owner, repo, issueNumber, newLabels.toString()); + core.info(`Actions: [mark-duplicate-labels][${newLabels}] success!`); + } + + if (closeIssue == 'true') { + await doCloseIssue(owner, repo, issueNumber); + } + } catch (error) { + core.info(error.message); } } else { core.info( diff --git a/docs/advanced.en-US.md b/docs/advanced.en-US.md index 53b0c70..eb9e6ed 100644 --- a/docs/advanced.en-US.md +++ b/docs/advanced.en-US.md @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-inactive - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-inactive' token: ${{ secrets.GITHUB_TOKEN }} @@ -73,7 +73,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -110,7 +110,7 @@ jobs: runs-on: ubuntu-latest steps: - name: close-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -142,7 +142,7 @@ Find the current warehouse issue No. 1, the creator is k and the content contain ```yml - name: Find comments - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'find-comments' token: ${{ secrets.GITHUB_TOKEN }} @@ -188,7 +188,7 @@ jobs: runs-on: ubuntu-latest steps: - name: lock-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -233,7 +233,7 @@ jobs: runs-on: ubuntu-latest steps: - name: month-statistics - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'month-statistics' token: ${{ secrets.GITHUB_TOKEN }} diff --git a/docs/advanced.md b/docs/advanced.md index a4ed96c..5567573 100644 --- a/docs/advanced.md +++ b/docs/advanced.md @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-inactive - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-inactive' token: ${{ secrets.GITHUB_TOKEN }} @@ -69,7 +69,7 @@ jobs: runs-on: ubuntu-latest steps: - name: check-issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'check-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -106,7 +106,7 @@ jobs: runs-on: ubuntu-latest steps: - name: close-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -138,7 +138,7 @@ jobs: ```yml - name: Find comments - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'find-comments' token: ${{ secrets.GITHUB_TOKEN }} @@ -184,7 +184,7 @@ jobs: runs-on: ubuntu-latest steps: - name: lock-issues - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issues' token: ${{ secrets.GITHUB_TOKEN }} @@ -229,7 +229,7 @@ jobs: runs-on: ubuntu-latest steps: - name: month-statistics - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'month-statistics' token: ${{ secrets.GITHUB_TOKEN }} diff --git a/docs/base.en-US.md b/docs/base.en-US.md index 7cb3491..a9b0fd0 100644 --- a/docs/base.en-US.md +++ b/docs/base.en-US.md @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Add assigness - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -62,7 +62,7 @@ jobs: if: contains(github.event.issue.body, 'xxx') == false steps: - name: Add labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -85,7 +85,7 @@ Close the specified issue. ```yml - name: Close issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -116,7 +116,7 @@ jobs: if: github.event.label.name == 'xxx' steps: - name: Create comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -158,7 +158,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Create issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -189,7 +189,7 @@ Create label。If you want to create multiple labels base on repository path. [S ```yml - name: Create label - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-label' token: ${{ secrets.GITHUB_TOKEN }} @@ -215,7 +215,7 @@ According to [`comment-id`](/en-US/guide/ref#-comment-id) delete the specified c ```yml - name: Delete comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'delete-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -245,7 +245,7 @@ jobs: if: github.event.label.name == 'invalid' steps: - name: Lock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -277,7 +277,7 @@ jobs: runs-on: ubuntu-latest steps: - name: mark-duplicate - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'mark-duplicate' token: ${{ secrets.GITHUB_TOKEN }} @@ -316,7 +316,7 @@ Open the specified issue. ```yml - name: Open issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'open-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -335,7 +335,7 @@ Remove the person designated by issue. ```yml - name: Remove assignees - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -356,7 +356,7 @@ Remove the specified labels. ```yml - name: Remove labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -379,7 +379,7 @@ Replace the labels of issue. ```yml - name: Set labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'set-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -400,7 +400,7 @@ Unlock the specified issue. ```yml - name: Unlock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'unlock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -431,7 +431,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Update comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -457,7 +457,7 @@ Update the specified issue according to the `issue-number`. ```yml - name: Update issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -505,7 +505,7 @@ jobs: runs-on: ubuntu-latest steps: - name: welcome - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'welcome' token: ${{ secrets.GITHUB_TOKEN }} diff --git a/docs/base.md b/docs/base.md index 7c5c16f..09c12b0 100644 --- a/docs/base.md +++ b/docs/base.md @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Add assigness - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -62,7 +62,7 @@ jobs: if: contains(github.event.issue.body, 'xxx') == false steps: - name: Add labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'add-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -85,7 +85,7 @@ jobs: ```yml - name: Close issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'close-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -116,7 +116,7 @@ jobs: if: github.event.label.name == 'xxx' steps: - name: Create comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -158,7 +158,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Create issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -189,7 +189,7 @@ jobs: ```yml - name: Create label - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-label' token: ${{ secrets.GITHUB_TOKEN }} @@ -215,7 +215,7 @@ jobs: ```yml - name: Delete comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'delete-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -245,7 +245,7 @@ jobs: if: github.event.label.name == 'invalid' steps: - name: Lock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'lock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -277,7 +277,7 @@ jobs: runs-on: ubuntu-latest steps: - name: mark-duplicate - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'mark-duplicate' token: ${{ secrets.GITHUB_TOKEN }} @@ -316,7 +316,7 @@ jobs: ```yml - name: Open issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'open-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -335,7 +335,7 @@ jobs: ```yml - name: Remove assignees - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-assignees' token: ${{ secrets.GITHUB_TOKEN }} @@ -356,7 +356,7 @@ jobs: ```yml - name: Remove labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'remove-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -379,7 +379,7 @@ jobs: ```yml - name: Set labels - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'set-labels' token: ${{ secrets.GITHUB_TOKEN }} @@ -400,7 +400,7 @@ jobs: ```yml - name: Unlock issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'unlock-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -431,7 +431,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Update comment - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-comment' token: ${{ secrets.GITHUB_TOKEN }} @@ -457,7 +457,7 @@ jobs: ```yml - name: Update issue - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'update-issue' token: ${{ secrets.GITHUB_TOKEN }} @@ -504,7 +504,7 @@ jobs: runs-on: ubuntu-latest steps: - name: welcome - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'welcome' token: ${{ secrets.GITHUB_TOKEN }} diff --git a/docs/guide/faq.en-US.md b/docs/guide/faq.en-US.md index 4b499c4..3a46b4f 100644 --- a/docs/guide/faq.en-US.md +++ b/docs/guide/faq.en-US.md @@ -6,6 +6,10 @@ toc: menu GitHub Actions is provided free of charge by GitHub. Among them, the `Private` project has a monthly limit of 2000 times, [see details](https://github.com/settings/billing). The `Public` project is unlimited. +### Is there a rate limit? + +Yes. The bottom layer of Action uses GitHub REST API. The general situation is 5000 times per hour. It is basically sufficient in principle, and it is also required to avoid invalid requests when defining Action. [Detailed view](https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting). + ## Are there any ready-made templates for reference? Yes. diff --git a/docs/guide/faq.md b/docs/guide/faq.md index 83517c8..8f02327 100644 --- a/docs/guide/faq.md +++ b/docs/guide/faq.md @@ -6,6 +6,10 @@ toc: menu GitHub Actions 是由 GitHub 免费提供的。其中 `Private` 项目每月有 2000 次的限制,[具体查看](https://github.com/settings/billing)。`Public` 项目无限制。 +### 有没有速率的限制? + +有的。Action 底层使用的是 GitHub REST API。一般情况是每小时 5000 次。原则上基本是够用的,同时也要求在 Action 定义时,尽量避免无效的请求。[具体查看](https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting)。 + ## 有没有现成的模板可以参考? 有的。 diff --git a/docs/index.en-US.md b/docs/index.en-US.md index 3743f43..0041361 100644 --- a/docs/index.en-US.md +++ b/docs/index.en-US.md @@ -38,7 +38,7 @@ jobs: steps: - name: help wanted if: github.event.label.name == 'help wanted' - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} diff --git a/docs/index.md b/docs/index.md index aa24e5d..f404308 100644 --- a/docs/index.md +++ b/docs/index.md @@ -38,7 +38,7 @@ jobs: steps: - name: help wanted if: github.event.label.name == 'help wanted' - uses: actions-cool/issues-helper@v2.1.0 + uses: actions-cool/issues-helper@v2.1.1 with: actions: 'create-comment' token: ${{ secrets.GITHUB_TOKEN }} diff --git a/package.json b/package.json index 20bbde8..2ec44ef 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "issues-helper", - "version": "2.0.0", + "version": "2.1.1", "private": true, "description": "Some operations on issue.", "main": "src/main.js", diff --git a/script/update-version.js b/script/update-version.js index 01bd317..883ce56 100644 --- a/script/update-version.js +++ b/script/update-version.js @@ -1,7 +1,7 @@ const { readFileSync, writeFileSync } = require('fs'); -const last = /v2\.0\.0/g; -const now = 'v2.1.0'; +const last = /v2\.1\.1/g; +const now = 'v2.2.0'; let readme = readFileSync('./README.md', 'utf-8'); readme = readme.replace(last, now); diff --git a/src/base.js b/src/base.js index dd5185a..d07ca59 100644 --- a/src/base.js +++ b/src/base.js @@ -190,17 +190,6 @@ async function doMarkDuplicate(owner, repo, labels) { const ifCommandInput = !!duplicateCommand; - const res = await octokit.repos.getCollaboratorPermissionLevel({ - owner, - repo, - username: commentUser, - }); - const { permission } = res.data; - if (!checkPermission(requirePermission, permission)) { - core.info(`The user ${commentUser} is not allow!`); - return false; - } - if ( !commentBody.includes('?') && ((ifCommandInput && @@ -208,37 +197,52 @@ async function doMarkDuplicate(owner, repo, labels) { commentBody.split(' ')[0] == duplicateCommand) || testDuplicate(commentBody)) ) { - if (ifCommandInput) { - const nextBody = commentBody.replace(duplicateCommand, 'Duplicate of'); - await doUpdateComment(owner, repo, commentId, nextBody, 'replace', true); - } else if (contents) { - await doCreateCommentContent(owner, repo, commentId, dealStringToArr(contents)); - } + try { + const res = await octokit.repos.getCollaboratorPermissionLevel({ + owner, + repo, + username: commentUser, + }); + const { permission } = res.data; + if (!checkPermission(requirePermission, permission)) { + core.info(`The user ${commentUser} is not allow!`); + return false; + } - const issue = await octokit.issues.get({ - owner, - repo, - issue_number: issueNumber, - }); - let newLabels = []; - if (issue.data.labels.length > 0) { - newLabels = issue.data.labels - .map(({ name }) => name) - .filter(name => !dealStringToArr(removeLables).includes(name)); - } - if (duplicateLabels) { - newLabels = [...newLabels, ...dealStringToArr(duplicateLabels)]; - } - if (labels) { - newLabels = dealStringToArr(labels); - } - if (newLabels.length > 0) { - await doSetLabels(owner, repo, issueNumber, newLabels.toString()); - core.info(`Actions: [mark-duplicate-labels][${newLabels}] success!`); - } + if (ifCommandInput) { + const nextBody = commentBody.replace(duplicateCommand, 'Duplicate of'); + await doUpdateComment(owner, repo, commentId, nextBody, 'replace', true); + } else if (contents) { + await doCreateCommentContent(owner, repo, commentId, dealStringToArr(contents)); + } - if (closeIssue == 'true') { - await doCloseIssue(owner, repo, issueNumber); + const issue = await octokit.issues.get({ + owner, + repo, + issue_number: issueNumber, + }); + let newLabels = []; + if (issue.data.labels.length > 0) { + newLabels = issue.data.labels + .map(({ name }) => name) + .filter(name => !dealStringToArr(removeLables).includes(name)); + } + if (duplicateLabels) { + newLabels = [...newLabels, ...dealStringToArr(duplicateLabels)]; + } + if (labels) { + newLabels = dealStringToArr(labels); + } + if (newLabels.length > 0) { + await doSetLabels(owner, repo, issueNumber, newLabels.toString()); + core.info(`Actions: [mark-duplicate-labels][${newLabels}] success!`); + } + + if (closeIssue == 'true') { + await doCloseIssue(owner, repo, issueNumber); + } + } catch (error) { + core.info(error.message); } } else { core.info(