This is an automated email from the ASF dual-hosted git repository.

alamb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git


The following commit(s) were added to refs/heads/master by this push:
     new 344ba1dd87 ci: use octokit to add assignee (#6267)
344ba1dd87 is described below

commit 344ba1dd870cb8c7327a08a7020a0350d4afd687
Author: dsgibbons <[email protected]>
AuthorDate: Wed Aug 21 02:14:35 2024 +0930

    ci: use octokit to add assignee (#6267)
---
 .github/actions/assign.mjs | 27 +++++++++++++++++++++++++++
 .github/workflows/take.yml | 23 +++++++++++------------
 2 files changed, 38 insertions(+), 12 deletions(-)

diff --git a/.github/actions/assign.mjs b/.github/actions/assign.mjs
new file mode 100644
index 0000000000..d08aa21ec8
--- /dev/null
+++ b/.github/actions/assign.mjs
@@ -0,0 +1,27 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License.  You may obtain a copy of the License at
+
+//   http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied.  See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+import { Octokit } from "@octokit/action";
+
+const [owner, repo] = process.env.GITHUB_REPOSITORY.split("/");
+
+new Octokit().rest.issues.addAssignees({
+  owner,
+  repo,
+  issue_number: process.env.ISSUE_NUMBER,
+  assignees: [process.env.ASSIGNEE],
+});
diff --git a/.github/workflows/take.yml b/.github/workflows/take.yml
index 86dc190add..4985e151d4 100644
--- a/.github/workflows/take.yml
+++ b/.github/workflows/take.yml
@@ -25,17 +25,16 @@ permissions:
 
 jobs:
   issue_assign:
-    runs-on: ubuntu-latest
     if: (!github.event.issue.pull_request) && github.event.comment.body == 
'take'
-    concurrency:
-      group: ${{ github.actor }}-issue-assign
+    runs-on: ubuntu-latest
     steps:
-      - run: |
-          CODE=$(curl -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" 
-LI https://api.github.com/repos/${{ github.repository }}/issues/${{ 
github.event.issue.number }}/assignees/${{ github.event.comment.user.login }} 
-o /dev/null -w '%{http_code}\n' -s)
-          if [ "$CODE" -eq "204" ]
-          then
-            echo "Assigning issue ${{ github.event.issue.number }} to ${{ 
github.event.comment.user.login }}"
-            curl -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -d 
'{"assignees": ["${{ github.event.comment.user.login }}"]}' 
https://api.github.com/repos/${{ github.repository }}/issues/${{ 
github.event.issue.number }}/assignees
-          else
-            echo "Cannot assign issue ${{ github.event.issue.number }} to ${{ 
github.event.comment.user.login }}"
-          fi
\ No newline at end of file
+      - uses: actions/checkout@v4
+      - uses: actions/setup-node@v4
+        with:
+          node-version: 20
+      - run: npm install @octokit/action
+      - run: node .github/actions/assign.mjs
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+          ISSUE_NUMBER: ${{ github.event.issue.number }}
+          ASSIGNEE: ${{ github.event.comment.user.login }}

Reply via email to