name: CI on: push: branches: - main pull_request: branches: - main jobs: build-and-test: runs-on: self-hosted env: HTTP_PROXY: http://172.17.0.1:7890 HTTPS_PROXY: https://172.17.0.1:7890 NO_PROXY: localhost,127.0.0.1,::1 steps: - name: Configure proxy shell: bash run: | git config --global http.proxy "$HTTP_PROXY" git config --global https.proxy "$HTTPS_PROXY" npm config set proxy "$HTTP_PROXY" npm config set https-proxy "$HTTPS_PROXY" - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '20' cache: 'npm' - name: Install dependencies run: npm ci - name: Lint run: npm run lint - name: Typecheck run: npm run typecheck - name: Build run: npm run build - name: Upload production build artifact uses: actions/upload-artifact@v4 with: name: next-build path: | .next package.json package-lock.json next.config.* tsconfig.json .npmrc