Skip to content

fix: set_pending 주석 #14

fix: set_pending 주석

fix: set_pending 주석 #14

#name: Add New PR to project as pending status
#
#on:
# pull_request:
# types:
# - opened
#
#jobs:
# set_pending:
# runs-on: ubuntu-latest
# steps:
# # Github App을 사용하여 토큰 생성
# - name: Generate token
# id: generate_token
# uses: actions/create-github-app-token@v1
# with:
# app-id: ${{ secrets.BOT_APP_ID }}
# private-key: ${{ secrets.BOT_APP_PEM }}
#
# # Github CLI를 사용하여 프로젝트 ID 및 필드 정보를 조회 후 project_data.json 파일에 저장
# - name: Get project data
# env:
# GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
# ORGANIZATION: depromeet
# PROJECT_NUMBER: 49
# run: |
# gh api graphql -f query='
# query($org: String!, $number: Int!) {
# organization(login: $org){
# projectV2(number: $number) {
# id
# fields(first:20) {
# nodes {
# ... on ProjectV2Field {
# id
# name
# }
# ... on ProjectV2SingleSelectField {
# id
# name
# options {
# id
# name
# }
# }
# }
# }
# }
# }
# }' -f org=$ORGANIZATION -F number=$PROJECT_NUMBER > project_data.json
#
# # json 파일에서 프로젝트 ID 및 필드 정보를 파싱하여 환경변수에 저장
# # 저장 필드 : 프로젝트 ID, Status 필드 ID, Status 필드의 Pending 옵션 ID
# - name: Parse project data
# run: |
# echo 'PROJECT_ID='$(jq '.data.organization.projectV2.id' project_data.json) >> $GITHUB_ENV
# echo 'STATUS_FIELD_ID='$(jq '.data.organization.projectV2.fields.nodes[] | select(.name== "Status") | .id' project_data.json) >> $GITHUB_ENV
# echo 'PENDING_OPTION_ID='$(jq '.data.organization.projectV2.fields.nodes[] | select(.name== "Status") | .options[] | select(.name=="처리 대기") |.id' project_data.json) >> $GITHUB_ENV
#
# # PR을 프로젝트에 추가 후 item_id를 환경변수에 저장
# - name: Add PR to project
# env:
# GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
# PR_ID: ${{ github.event.pull_request.node_id }}
# run: |
# item_id="$( gh api graphql -f query='
# mutation($project:ID!, $pr:ID!) {
# addProjectV2ItemById(input: {projectId: $project, contentId: $pr}) {
# item {
# id
# }
# }
# }' -f project=$PROJECT_ID -f pr=$PR_ID --jq '.data.addProjectV2ItemById.item.id')"
#
# echo 'ITEM_ID='$item_id >> $GITHUB_ENV
#
# # 프로젝트에 추가된 PR의 item_id를 환경변수에서 읽어와 Status 필드의 값을 Pending으로 변경
# - name: Set status to pending
# env:
# GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
# run: |
# PENDING_OPTION_ID="${{ env.PENDING_OPTION_ID }}"
#
# gh api graphql -f query='
# mutation ($project: ID!, $item: ID!, $status_field: ID!, $status_value: String!) {
# updateProjectV2ItemFieldValue(
# input: {
# projectId: $project,
# itemId: $item,
# fieldId: $status_field,
# value: {singleSelectOptionId: $status_value}
# }
# ) {
# projectV2Item {
# id
# }
# }
# }' -f project=$PROJECT_ID -f item=$ITEM_ID -f status_field=$STATUS_FIELD_ID -f status_value=$PENDING_OPTION_ID --silent