1- # This workflow is used to add new issues to GitHub Projects (Beta)
1+ # This workflow is used to add new issues to GitHub GraphSDKs Project
22
3- name : Add PR to project
3+ name : Add Issue or PR to project
44on :
55 issues :
66 types :
77 - opened
8+ pull_request :
9+ types :
10+ - opened
11+ branches :
12+ - " dev"
13+
814jobs :
915 track_issue :
16+ if : github.actor != 'dependabot[bot]' && github.event.pull_request.head.repo.fork == false
1017 runs-on : ubuntu-latest
1118 steps :
1219 - name : Generate token
2027 env :
2128 GITHUB_TOKEN : ${{ steps.generate_token.outputs.token }}
2229 ORGANIZATION : microsoftgraph
23- PROJECT_NUMBER : 44
30+ PROJECT_NUMBER : 55
2431 run : |
2532 gh api graphql -f query='
2633 query($org: String!, $number: Int!) {
@@ -44,13 +51,13 @@ jobs:
4451 }' -f org=$ORGANIZATION -F number=$PROJECT_NUMBER > project_data.json
4552
4653 echo 'PROJECT_ID='$(jq '.data.organization.projectV2.id' project_data.json) >> $GITHUB_ENV
47- echo 'STATUS_FIELD_ID ='$(jq '.data.organization.projectV2.fields.nodes[] | select(.name== "Status ") | .id' project_data.json) >> $GITHUB_ENV
48- echo 'TRIAGE_OPTION_ID ='$(jq '.data.organization.projectV2.fields.nodes[] | select(.name== "Status ") | .options[] | select(.name=="Needs Triage 🔍 ") |.id' project_data.json) >> $GITHUB_ENV
54+ echo 'LANGUAGE_FIELD_ID ='$(jq '.data.organization.projectV2.fields.nodes[] | select(.name== "Language ") | .id' project_data.json) >> $GITHUB_ENV
55+ echo 'LANGUAGE_OPTION_ID ='$(jq '.data.organization.projectV2.fields.nodes[] | select(.name== "Language ") | .options[] | select(.name=="JavaScript ") |.id' project_data.json) >> $GITHUB_ENV
4956
50- - name : Add Issue to project
57+ - name : Add Issue or PR to project
5158 env :
5259 GITHUB_TOKEN : ${{ steps.generate_token.outputs.token }}
53- ISSUE_ID : ${{ github.event.issue.node_id }}
60+ ISSUE_ID : ${{ github.event_name == 'issues' && github. event.issue.node_id || github.event.pull_request .node_id }}
5461 run : |
5562 item_id="$( gh api graphql -f query='
5663 mutation($project:ID!, $issue:ID!) {
@@ -60,28 +67,28 @@ jobs:
6067 }
6168 }
6269 }' -f project=$PROJECT_ID -f issue=$ISSUE_ID --jq '.data.addProjectV2ItemById.item.id')"
63-
70+
6471 echo 'ITEM_ID='$item_id >> $GITHUB_ENV
6572
66- - name : Set Triage
73+ - name : Set Language
6774 env :
6875 GITHUB_TOKEN : ${{ steps.generate_token.outputs.token }}
6976 run : |
7077 gh api graphql -f query='
7178 mutation (
7279 $project: ID!
7380 $item: ID!
74- $status_field : ID!
75- $status_value : String!
81+ $language_field : ID!
82+ $language_value : String!
7683 ) {
7784 set_status: updateProjectV2ItemFieldValue(input: {
7885 projectId: $project
7986 itemId: $item
80- fieldId: $status_field
81- value: {singleSelectOptionId: $status_value}
87+ fieldId: $language_field
88+ value: {singleSelectOptionId: $language_value}
8289 }) {
8390 projectV2Item {
8491 id
8592 }
8693 }
87- }' -f project=$PROJECT_ID -f item=$ITEM_ID -f status_field=$STATUS_FIELD_ID -f status_value =${{ env.TRIAGE_OPTION_ID }} --silent
94+ }' -f project=$PROJECT_ID -f item=$ITEM_ID -f language_field=$LANGUAGE_FIELD_ID -f language_value =${{ env.LANGUAGE_OPTION_ID }} --silent
0 commit comments