티스토리 뷰

gitHub의 메인페이지를 장식하는데 유용한 wakatime의 README가 업데이트되지 않은 지, 3주가 흘렀다.
첫번째로 github action이 잘 돌아가고 있는 지 확인해봤는데, 아니나 다를까 action 들이 3주전부터 fail상태였다.
 
fail한 원인에 대해서 알고싶은데 내역이 아무것도 뜨지않아서 가장 빠르게 체크할 수 있는 action에 등록해놓은 token의 유효기간을 체크하였다.


[ action jobs log 확인하기 ]

+ 다시 보니 action error 내역을 확인할 수 있다^^ Jobs의 name(아래 이미지에서 “Update Readme with Metrics”)을 클릭하면 어디서 action의 에러가 났는지 확인해볼 수 있으니 github action을 활용할 때 이 점을 기억해두면 좋을 거 같다.
운이 좋아서 에러 내역을 보지 않고도 유추하여 해결했지만 보통 action이 실패하면 실패원인을 알려주는 error log를 참고하는 게 좋다.


.github/workflows/wakatime.yml

name: Waka Readme

on:
  schedule:
    # Runs at 12am IST
    - cron: '30 18 * * *'
  workflow_dispatch:
jobs:
  update-readme:
    name: Update Readme with Metrics
    runs-on: ubuntu-latest
    steps:
      - uses: anmol098/waka-readme-stats@master
        with:
          WAKATIME_API_KEY: ${{ secrets.WAKATIME_API_KEY }}
          GH_TOKEN: ${{ secrets.GH_TOKEN }}
          LOCALE: "ko"
          SHOW_LINES_OF_CODE: "False"
          SHOW_PROFILE_VIEWS: "False"
          SHOW_DAYS_OF_WEEK: "False"
          SHOW_SHORT_INFO: "False"
          SHOW_LOC_CHART: "False"
          SHOW_PROJECTS: "False"
          SHOW_LANGUAGE_PER_REPO: "False"
  • 여기서 들어가는 key는 2개 와카타임 API 키깃허브 토큰
  • API 키는 발급당시 기간이 따로 없던 거 같고 그렇다면 깃허브 토큰이 문제인 거 같았다. 

확인해보니 내 classic token 이 만료된 상태였다. 다시 새롭게 classic token을 발급해서 action의 GH_TOKEN 키의 값을 업데이트해주었는데도 불구하고 fail 에러가 떴다. 
 
와카타임 공식 repo에 들어가서 README를 읽어봤는데, 프로파일 리드미를 사용하고 있는 유저들의 token이 현재 beta로 나와있는 fine grained token 을 사용해야하는 거 같았다. (2023-08-24 기준)

If you are using GH_TOKEN, make sure set the fine grained token scope to repository contents with read-and-write access. See #141 (comment).

위의 이슈를 타고 들어가보면, fine grained token의 권한 부여설정을 어떻게 해주라는 거 같은데 처음에는 살짝 헤맸다. 

이녀석을 발급받아야 한다.

발급 받을 때, Repository access 를 Public Repositories (read-only) 가 아닌 All repositories 로 선택해주고
하단에 생기는 Permissions > Contents 의 설정read and write로 바꿔줘야 한다.

새로 발급한 token 값을 복사해서 기존에 등록된 GH_TOKEN 값을 업데이트해준다. 
그 다음 실패한 action 내역을 눌러서 오른쪽 상단의 re-run jobs 버튼을 눌러주고 결과를 기다린다. (기도메타)

 
해결 완료! 다시 정상적으로 README 프로필이 돌아간다.

 

댓글