티스토리 뷰

Pull Request 에서 승인 처리 이후, 코드 검사기능을 추가하여 PR 을 완료한 소스가 이상이 없는지를 체크하는 기능을 추가합니다.

깃허브 프로젝트를 이용하면 github actions 기능을 이용해 많이들 사용하는데 그에 대한 가이드를 간략하게 정리합니다.

 

PR RullSets

RullSets 기능을 이용해 특정 룰을 만들고 해당 룰에 대해 셋업을 해줍니다.

 

타겟이 되는 브랜치, 일반적으로 dev 라는 브랜치라고 가정하고 진행해보겠습니다.

아래에 Require a pull request before merging 을 체크하고 아래 옵션을 체크해줍니다.

 

보면 승인을 2명 이상이 해줘야지만, 이제 PR 을 처리할 수 있게끔 하고, 머지기능도 일반, Squash, Rebase 등을 지원합니다.

하지만, 그리고 나서 승인이 완료된 시점에 실행할 actions 를 넣어야함으로 아래 추가로 체크해줍시다.

 

이제 저기에 checks 를 하면 되는데, 직접 눌러서 만들어도 되지만, 우리는 .github/workflows 아래에 pr-check 파일을 하나 만들어줍시다. 해당 pr-check 에서는 빌드기능 정도 해보도록 합시다.

name: PR Validation (Build)

on:
  pull_request_review:
    types: [submitted]

jobs:
  check_build:
    runs-on: ubuntu-latest
    if: ${{ github.event.review.state == 'approved' }}
    timeout-minutes: 10
    strategy:
      matrix:
        stage: ['dev']

    steps:
      - name: Checkout source code
        uses: actions/checkout@v4

      - name: Setup Node.js environment
        uses: actions/setup-node@v4
        with:
          node-version: 'lts/*'

      - name: Cache dependencies
        uses: actions/cache@v4
        id: cache
        with:
          path: |
            node_modules
            .pnpm-store
          key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
          restore-keys: |
            ${{ runner.os }}-pnpm-store-

      - name: Install pnpm
        run: npm install -g pnpm

      - name: Install dependencies
        run: pnpm install --frozen-lockfile

      - name: Build
        run: pnpm build:${{ matrix.stage }}

 

해당 소스를 만들어서 넣어주면, 이제 check 하는 곳에 위에 check_build 라는 이름으로 나오게 될 것 입니다.

완료되고 PR로 다시 들어가면, 아래와 같은 목록이 나와있는 것을 확인합니다.

이는 승인이 완료 후, 간단한 빌드 테스트를 진행하는 것이고 여기까지 완료되야 PR 리뷰가 완료되는 시스템입니다.

'개발.. > Git' 카테고리의 다른 글

Another git process seems to be running in this repository  (0) 2023.09.06
git 에서 warning: encountered old-style 에러 발생  (0) 2023.09.05
Git Flow  (0) 2023.09.04
Gitlab - 이슈 템플릿  (0) 2022.06.21
Git Conflict  (0) 2022.03.24
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함