From 6b4b3a7a6c5933a22bb565b8531a31eea218fef8 Mon Sep 17 00:00:00 2001 From: gyan pratap singh <98226958+Gyanthakur@users.noreply.github.com> Date: Wed, 9 Oct 2024 22:21:54 +0530 Subject: [PATCH] Update autoAssign.yml --- .github/workflows/autoAssign.yml | 219 ++++++++++++++++++++----------- 1 file changed, 141 insertions(+), 78 deletions(-) diff --git a/.github/workflows/autoAssign.yml b/.github/workflows/autoAssign.yml index 6f08c28..e132116 100644 --- a/.github/workflows/autoAssign.yml +++ b/.github/workflows/autoAssign.yml @@ -1,6 +1,8 @@ name: Auto Assign Issues and PRs on: + pull_request_target: + types: [opened, reopened] # Use pull_request_target for higher permissions pull_request: types: [opened, reopened] # Trigger on opened and reopened PRs issues: @@ -31,15 +33,14 @@ jobs: console.log("Attempting to assign to:", assignee); // Log the assignee for debugging try { - if (context.eventName === 'pull_request') { - // Check if the contributor has permissions to update the pull request + if (context.eventName === 'pull_request_target' || context.eventName === 'pull_request') { + // Assign the pull request to the contributor const pullRequestNumber = context.payload.pull_request.number; - // Assign the pull request to the contributor await github.rest.issues.addAssignees({ owner: context.repo.owner, repo: context.repo.repo, - issue_number: pullRequestNumber, // PRs are also issues, hence issue_number is used + issue_number: pullRequestNumber, assignees: [assignee] }); console.log(`PR #${pullRequestNumber} successfully assigned to ${assignee}`); @@ -60,14 +61,13 @@ jobs: } - # name: Auto Assign Issues and PRs # on: # pull_request: # types: [opened, reopened] # Trigger on opened and reopened PRs # issues: -# types: [opened] # Trigger on issue opened events +# types: [opened] # Trigger on issue open events # permissions: # issues: write @@ -83,6 +83,7 @@ jobs: # uses: actions/github-script@v6 # with: # script: | +# console.log("Event Payload:"); # console.log(JSON.stringify(context.payload, null, 2)); // Log the entire payload for debugging # - name: Assign the issue or PR @@ -90,79 +91,141 @@ jobs: # with: # script: | # const assignee = context.payload.sender.login; // Get the username of the contributor -# console.log("Assigning to: ", assignee); // Log the assignee for debugging - -# if (context.eventName === 'pull_request') { -# // Check if the contributor has permissions to update the pull request -# const pullRequestNumber = context.payload.pull_request.number; - -# // Assign the pull request to the contributor -# await github.rest.issues.addAssignees({ -# owner: context.repo.owner, -# repo: context.repo.repo, -# issue_number: pullRequestNumber, // PRs are also issues, hence issue_number is used -# assignees: [assignee] -# }); - -# } else if (context.eventName === 'issues') { -# // Assign the issue to the contributor -# const issueNumber = context.payload.issue.number; - -# await github.rest.issues.addAssignees({ -# owner: context.repo.owner, -# repo: context.repo.repo, -# issue_number: issueNumber, -# assignees: [assignee] -# }); +# console.log("Attempting to assign to:", assignee); // Log the assignee for debugging + +# try { +# if (context.eventName === 'pull_request') { +# // Check if the contributor has permissions to update the pull request +# const pullRequestNumber = context.payload.pull_request.number; + +# // Assign the pull request to the contributor +# await github.rest.issues.addAssignees({ +# owner: context.repo.owner, +# repo: context.repo.repo, +# issue_number: pullRequestNumber, // PRs are also issues, hence issue_number is used +# assignees: [assignee] +# }); +# console.log(`PR #${pullRequestNumber} successfully assigned to ${assignee}`); +# } else if (context.eventName === 'issues') { +# // Assign the issue to the contributor +# const issueNumber = context.payload.issue.number; + +# await github.rest.issues.addAssignees({ +# owner: context.repo.owner, +# repo: context.repo.repo, +# issue_number: issueNumber, +# assignees: [assignee] +# }); +# console.log(`Issue #${issueNumber} successfully assigned to ${assignee}`); +# } +# } catch (error) { +# console.error("Error during assignment:", error); # } - - -# name: Auto Assign Issues and PRs - -# on: -# pull_request: -# types: [opened, reopened] -# issues: -# types: [opened] - -# permissions: -# issues: write -# pull-requests: write - -# jobs: -# auto-assign: -# runs-on: ubuntu-latest - -# steps: -# # Step to add logginggg -# - name: Log context for debugging -# uses: actions/github-script@v6 -# with: -# script: | -# console.log(JSON.stringify(context.payload, null, 2)); // Log the entire payload for debugging - -# - name: Assign the issue or PR -# uses: actions/github-script@v6 -# with: -# script: | -# const assignee = context.payload.sender.login; // Get the username of the contributor -# console.log("Assigning to: ", assignee); // Log the assignee for debugging - -# if (context.eventName === 'pull_request') { -# await github.rest.pulls.update({ -# owner: context.repo.owner, -# repo: context.repo.repo, -# pull_number: context.payload.pull_request.number, -# assignees: [assignee] // Assign the pull request to the contributor -# }); -# } else if (context.eventName === 'issues') { -# await github.rest.issues.addAssignees({ -# owner: context.repo.owner, -# repo: context.repo.repo, -# issue_number: context.payload.issue.number, -# assignees: [assignee] // Assign the issue to the contributor -# }); -# } +# # name: Auto Assign Issues and PRs + +# # on: +# # pull_request: +# # types: [opened, reopened] # Trigger on opened and reopened PRs +# # issues: +# # types: [opened] # Trigger on issue opened events + +# # permissions: +# # issues: write +# # pull-requests: write + +# # jobs: +# # auto-assign: +# # runs-on: ubuntu-latest + +# # steps: +# # # Step to add logging for debugging +# # - name: Log context for debugging +# # uses: actions/github-script@v6 +# # with: +# # script: | +# # console.log(JSON.stringify(context.payload, null, 2)); // Log the entire payload for debugging + +# # - name: Assign the issue or PR +# # uses: actions/github-script@v6 +# # with: +# # script: | +# # const assignee = context.payload.sender.login; // Get the username of the contributor +# # console.log("Assigning to: ", assignee); // Log the assignee for debugging + +# # if (context.eventName === 'pull_request') { +# # // Check if the contributor has permissions to update the pull request +# # const pullRequestNumber = context.payload.pull_request.number; + +# # // Assign the pull request to the contributor +# # await github.rest.issues.addAssignees({ +# # owner: context.repo.owner, +# # repo: context.repo.repo, +# # issue_number: pullRequestNumber, // PRs are also issues, hence issue_number is used +# # assignees: [assignee] +# # }); + +# # } else if (context.eventName === 'issues') { +# # // Assign the issue to the contributor +# # const issueNumber = context.payload.issue.number; + +# # await github.rest.issues.addAssignees({ +# # owner: context.repo.owner, +# # repo: context.repo.repo, +# # issue_number: issueNumber, +# # assignees: [assignee] +# # }); +# # } + + + + + +# # name: Auto Assign Issues and PRs + +# # on: +# # pull_request: +# # types: [opened, reopened] +# # issues: +# # types: [opened] + +# # permissions: +# # issues: write +# # pull-requests: write + +# # jobs: +# # auto-assign: +# # runs-on: ubuntu-latest + +# # steps: +# # # Step to add logginggg +# # - name: Log context for debugging +# # uses: actions/github-script@v6 +# # with: +# # script: | +# # console.log(JSON.stringify(context.payload, null, 2)); // Log the entire payload for debugging + +# # - name: Assign the issue or PR +# # uses: actions/github-script@v6 +# # with: +# # script: | +# # const assignee = context.payload.sender.login; // Get the username of the contributor +# # console.log("Assigning to: ", assignee); // Log the assignee for debugging + +# # if (context.eventName === 'pull_request') { +# # await github.rest.pulls.update({ +# # owner: context.repo.owner, +# # repo: context.repo.repo, +# # pull_number: context.payload.pull_request.number, +# # assignees: [assignee] // Assign the pull request to the contributor +# # }); +# # } else if (context.eventName === 'issues') { +# # await github.rest.issues.addAssignees({ +# # owner: context.repo.owner, +# # repo: context.repo.repo, +# # issue_number: context.payload.issue.number, +# # assignees: [assignee] // Assign the issue to the contributor +# # }); +# # }