diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..998e780a --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,48 @@ +name: CI Pipeline + +on: + push: + branches: + - dev + - dev-fe + - dev-be + pull_request: + branches: + - dev + - dev-fe + - dev-be + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + matrix: + workspace: [backend, frontend, shared] + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: '20' + + - name: Install dependencies + run: yarn install + + - name: Build ${{ matrix.workspace }} + run: | + cd ${{ matrix.workspace }} + yarn build + + - name: Lint ${{ matrix.workspace }} + run: | + cd ${{ matrix.workspace }} + yarn lint || exit 1 # Lint 실패 시 종료 + + - name: TypeScript Check ${{ matrix.workspace }} + run: | + cd ${{ matrix.workspace }} + yarn tsc --noEmit || exit 1 # 빌드하지 않고 타입 오류만 체크