Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Devops/bugfix/#532 pr 라벨 설정 및 이슈 상태 변경 오류 #533

Conversation

kimyu0218
Copy link
Collaborator

@kimyu0218 kimyu0218 commented Feb 14, 2024

🔮 resolved #532

변경 사항

일단 문제가 되는 부분 삭제

고민과 해결 과정

원인

  • 프로젝트 url이 https://github.com/orgs/boostcampwm2023/projects/19여서 프로젝트 ID가 19라고 판단
  • 하지만 19는 프로젝트의 number일 뿐 ID는 이와 다른 값임

시행착오

1️⃣ 프로젝트 ID 조회하기

프로젝트 아이디를 조회하고자 github.rest.projects.listForOrggithub.rest.project.listForRepo를 사용했다. 각각 프로젝트가 속한 organization, repository를 조회한다.

  • listForOrg
const projects = await github.rest.projects.listForOrg({
  org,
}); // status: 200, data: []
  • listForRepo
const projects = await github.rest.projects.listForRepo({
  owner,
  repo,
}); // status: 200, data: []

둘 다 200번 응답을 반환하지만 data 컬럼이 빈 배열로 와 프로젝트 ID를 조회할 수 없었다.

2️⃣ 개발자 도구를 열어서 프로젝트 ID 찾기

무식한 방법으로 프로젝트 ID를 찾는데 성공했다. 이를 깃헙 시크릿에 추가하여 column을 조회하는 데 집어넣었다.

const columns = await github.rest.projects.listColumns({
      project_id: projectId,
}); // status: 200, data: []

아까와 달리 깃헙 액션에서 에러가 발생하진 않지만, data에 아무것도 들어있지 않았다.

3️⃣ 외부 액션 사용하기

REST api로 유의미한 응답을 받아올 수 없어서 github-project-automation-plus를 이용했다.

move-pr:
  name: Move PR to another column
  runs-on: ubuntu-latest

  steps:
    - name: Move PR to In progress
      if: ${{ github.event.pull_request.draft == true }}
      uses: alex-page/[email protected]
      with:
        project: ${{ env.project }}
        column: In progress
        repo-token: ${{ secrets.ADD_TO_PROJECT_PAT }}

    - name: Move PR to In review
      if: ${{ github.event.pull_request.draft == false }}
      uses: alex-page/[email protected]
      with:
        project: ${{ env.project }}
        column: In review
        repo-token: ${{ secrets.GHPROJECT_TOKEN }}

위와 같이 액션을 작성했으나 다음과 같은 에러가 발생하여 사용할 수 없었다.

Error: Could not find the column "In progress" or project "web09-MagicConch"

이모지가 없는 게 원인인가 하여 이모지도 추가해봤는데 동작하지 않았다.

결론

일단 이슈 상태를 전환하는 것 외의 액션은 동작하기 때문에 문제가 되는 액션을 제거했다. 이는 깃헙 액션을 조금 더 깊게 학습한 뒤에 구현하는 게 좋을 것 같다.

(선택) 테스트 결과

라벨 추가 및 assignee 할당
image

- 프로젝트 url에 붙은 숫자는 projectId가 아닌 projectNumber임
- projectId를 조회하기 위해 두 가지 액션을 시도함
  - projects.listForOrg, projects.listForRepo 모두 200번을 받지만 data로
    빈 배열이 옴
  - 권한 문제인 듯 한데 이유 못찾음
- 일단 삭제 후 기존 액션 사용할 예정
@kimyu0218 kimyu0218 force-pushed the DEVOPS/bugfix/#532-PR-라벨-설정-및-이슈-상태-변경-오류 branch 2 times, most recently from 04deb10 to 42cdb90 Compare February 14, 2024 19:55
- 불필요한 filter 삭제
@kimyu0218 kimyu0218 force-pushed the DEVOPS/bugfix/#532-PR-라벨-설정-및-이슈-상태-변경-오류 branch from 40577a2 to d7aa6b8 Compare February 14, 2024 20:26
- PR을 열었다 닫았다 반복하는 경우 resolved가 계속 생김
- resolved 문구를 없애고 다시 붙이도록 수정
- 앞에 이모지를 붙여 본문에 작성한 resolved가 사라지지 않도록 설정
- 하지만 정규식과 같은 형태로 작성하는 경우, 본문 내용이 사라짐
@kimyu0218 kimyu0218 force-pushed the DEVOPS/bugfix/#532-PR-라벨-설정-및-이슈-상태-변경-오류 branch from 44de5f7 to 3461036 Compare February 14, 2024 23:17
@kimyu0218 kimyu0218 marked this pull request as ready for review February 14, 2024 23:23
@kimyu0218 kimyu0218 merged commit b6202c0 into dev Feb 14, 2024
1 check failed
@kimyu0218 kimyu0218 deleted the DEVOPS/bugfix/#532-PR-라벨-설정-및-이슈-상태-변경-오류 branch February 14, 2024 23:23
@HeoJiye HeoJiye mentioned this pull request Feb 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

🐞 PR 라벨 설정 및 이슈 상태 변경 오류
1 participant