Skip to content

Commit 3ebca62

Browse files
committed
Updating graphql for add_issue_to_project
Restructuring queries to use ProjectV2
1 parent 5db9a73 commit 3ebca62

File tree

1 file changed

+25
-18
lines changed

1 file changed

+25
-18
lines changed

.github/workflows/set-backlog-fields.yml

Lines changed: 25 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Add Issue to Project
22

33
on:
44
issues:
5-
types: [ opened ]
5+
types: [ opened, reopened ]
66

77
jobs:
88
add_issue_to_project:
@@ -30,7 +30,7 @@ jobs:
3030
repository(name:"web-languageforge", owner:$org) {
3131
issue(number: $issue_number) {
3232
id
33-
projectNextItems(first:100) {
33+
projectItems(first:100) {
3434
nodes {
3535
id
3636
}
@@ -39,32 +39,35 @@ jobs:
3939
}
4040
}' -F issue_number=$ISSUE_NUMBER -f org=$ORGANIZATION > project_data.json
4141
42-
echo 'IN_PROJECT='$(jq '.data.repository.issue.projectNextItems[] | length' project_data.json) >> $GITHUB_ENV
42+
echo 'IN_PROJECT='$(jq '.data.repository.issue.projectItems[] | length' project_data.json) >> $GITHUB_ENV
4343
4444
- name: get required info for set operations
4545
env:
4646
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
4747
ORGANIZATION: sillsdev
4848
run: |
4949
gh api graphql -f query='
50-
query($org: String!) {
51-
organization(login: $org){
52-
projectNext(number: 1) {
50+
query ($org: String!) {
51+
organization(login: $org) {
52+
projectV2(number: 1) {
5353
id
54-
fields(first:100) {
55-
nodes {
54+
field(name: "ProductOwner") {
55+
... on ProjectV2SingleSelectField {
5656
id
5757
name
58-
settings
58+
options {
59+
id
60+
name
61+
}
5962
}
6063
}
6164
}
6265
}
6366
}' -f org=$ORGANIZATION > project_data.json
6467
65-
echo 'PROJECT_ID='$(jq '.data.organization.projectNext.id' project_data.json) >> $GITHUB_ENV
66-
echo 'FIELD_ID='$(jq '.data.organization.projectNext.fields.nodes[] | select(.name== "ProductOwner") | .id' project_data.json) >> $GITHUB_ENV
67-
echo 'INCOMING_ID='$(jq '.data.organization.projectNext.fields.nodes[] | select(.name== "ProductOwner") | .settings | fromjson.options[] | select(.name=="Incoming") | .id' project_data.json) >> $GITHUB_ENV
68+
echo 'PROJECT_ID='$(jq '.data.organization.projectV2.id' project_data.json) >> $GITHUB_ENV
69+
echo 'FIELD_ID='$(jq '.data.organization.projectV2.field.id' project_data.json) >> $GITHUB_ENV
70+
echo 'INCOMING_ID='$(jq '.data.organization.projectV2.field.options[] | select(.name=="Incoming") | .id' project_data.json) >> $GITHUB_ENV
6871
6972
- name: Add issue to project
7073
if: env.IN_PROJECT == 0
@@ -74,12 +77,12 @@ jobs:
7477
run: |
7578
item_id="$( gh api graphql -f query='
7679
mutation($project:ID!, $item:ID!) {
77-
addProjectNextItem(input: {projectId: $project, contentId: $item}) {
78-
projectNextItem {
80+
addProjectV2ItemById(input: {projectId: $project, contentId: $item}) {
81+
item {
7982
id
8083
}
8184
}
82-
}' -f project=$PROJECT_ID -f item=$ISSUE_ID --jq '.data.addProjectNextItem.projectNextItem.id')"
85+
}' -f project=$PROJECT_ID -f item=$ISSUE_ID --jq '.data.addProjectV2ItemById.projectV2Item.id')"
8386
8487
echo 'ITEM_ID='$item_id >> $GITHUB_ENV
8588
@@ -95,13 +98,17 @@ jobs:
9598
$field: ID!
9699
$field_value: String!)
97100
{
98-
updateProjectNextItemField(input: {
101+
updateProjectV2ItemFieldValue(input: {
99102
projectId: $project
100103
itemId: $item
101104
fieldId: $field
102-
value: $field_value})
105+
value: {
106+
singleSelectOptionId: $field_value
107+
}
108+
}
109+
)
103110
{
104-
projectNextItem {
111+
projectV2Item {
105112
id
106113
}
107114
}

0 commit comments

Comments
 (0)