@@ -2,7 +2,7 @@ name: Add Issue to Project
22
33on :
44 issues :
5- types : [ opened ]
5+ types : [ opened, reopened ]
66
77jobs :
88 add_issue_to_project :
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.item .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