GitHub Actions에서 reviewdog에 pylint를 해 보았습니다.

이 기사에 대하여



GitHub Actions에서 reviewdog + pylint를 연계해 보았으므로 그 기록입니다.
시도한 계기사이므로 별로 자세한 설명 등은 없습니다만, 누군가의 참고가 되면 다행입니다.

이 기사에는 쓰지 않은 것



GitHub Actions 및 reviewdog 자체에 대한 설명은 이 기사에서는 다루지 않습니다.
링크를 붙여 둡니다 때문에, 자세히 알고 싶은 분은 수고스럽지만 그쪽을 확인해 주세요.
  • GitHub Actions
  • reviewdog
  • Reviewdog을 사용하여 코드 검토 및 개발을 개선하지 않겠습니까?

  • 덧붙여서, linter에 따라서는 Marketplace 에 이미 준비가 있거나 하기 때문에, 들여다 보는 것도 좋다고 생각합니다!

    코드



    우선 코드를 보고 싶다는 당신에게는 이쪽을 부디!
    이 코드에서는, functions/디렉토리에 pylint하고 싶은 코드가 「페케페.py」인 파일명으로 놓여져 있는 것으로 되어 있습니다. 디렉토리 구성이나 name, branches, 여러가지 버전은 적당히 사용 환경에 맞게 변경해 주세요.
    코드가 좋은 느낌으로 쓸 수 있다면 .github/workflows/밑에 저장합시다.

    .github/workflows/reviewdog.yml
    
    name: reviewdog
    on: 
      pull_request:
        branches:
          - develop
    jobs:
      reviewdog:
        name: reviewdog
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v1
    
          - name: Set up Python 3.8
            uses: actions/setup-python@v1
            with:
              python-version: 3.8
    
          - name: Setup pylint
            run: |
              python -m pip install --upgrade pip
              pip install pylint
              pylint --generate-rcfile > ~/.pylintrc
    
          - name: Setup reviewdog
            run: |
              mkdir -p $HOME/bin && curl -sfL https://raw.githubusercontent.com/reviewdog/reviewdog/master/install.sh| sh -s -- -b $HOME/bin
              echo ::add-path::$HOME/bin
    
          - name: Run reviewdog
            env:
              REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
            run: |
              pylint --rcfile=~/.pylintrc functions/*.py | reviewdog -efm="%f:%l:%c: %m" -reporter=github-pr-review
    
    

    무슨 일이야?



    functions/부하에 hello.py를 저장하고 develop 브랜치에 풀릭을 내 보았습니다.
    글쎄, 어떻게 될까 ...?



    오, 뭔가 움직이고있어!
    조금 기다리면...



    짱!
    이런 식으로, pylint로 걸린 부분을 코멘트로서 표시해 줍니다.
    강아지가 매우 귀엽네요 🐶 걸렸던 슬픔도 치유해 줄 것 같아요.

    끝에



    어땠습니까?
    이번에는 GitHub Actions에서 움직여 보았습니다만, reviewdog는 로컬에서도 동작하므로, 흥미가 있는 분은 시험해 보세요.

    그럼!

    좋은 웹페이지 즐겨찾기