Merge pull request #213 from amosproj/ceciliabetb-patch-9 #384
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lint Test Build | |
on: | |
push: | |
branches: | |
- develop | |
pull_request: | |
branches: | |
- develop | |
workflow_dispatch: | |
jobs: | |
install-deps: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: pnpm/action-setup@v3 | |
with: | |
version: 8 | |
- name: Restore cached npm dependencies | |
uses: actions/cache@v4 | |
with: | |
path: node_modules | |
key: npm-dependencies-${{ hashFiles('pnpm-lock.yaml') }} | |
- uses: actions/setup-node@v4 | |
if: steps.cache.outputs.cache-hit != 'true' | |
with: | |
node-version: 20.x | |
- run: pnpm install --frozen-lockfile --ignore-scripts | |
if: steps.cache.outputs.cache-hit != 'true' | |
- name: Derive appropriate SHAs for base and head for `nx affected` commands | |
id: set-shas | |
uses: nrwl/nx-set-shas@v4 | |
with: | |
main-branch-name: ${{ inputs.main-branch-name }} | |
last-successful-event: ${{ inputs.last-successful-event }} | |
- name: Generate prisma client | |
run: pnpm nx run backend:"prisma:generate" | |
lint: | |
runs-on: ubuntu-latest | |
needs: install-deps | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- uses: pnpm/action-setup@v3 | |
with: | |
version: 8 | |
- run: git fetch --no-tags --prune --depth=1 origin develop | |
- name: Cache node modules | |
uses: actions/cache@v4 | |
with: | |
path: node_modules | |
key: npm-dependencies-${{ hashFiles('pnpm-lock.yaml') }} | |
- run: pnpm nx affected --target=lint --parallel=3 --configuration=ci --base=${{ steps.set-shas.main-branch-name }} --head=${{ steps.set-shas.last-successful-event }} | |
test: | |
runs-on: ubuntu-latest | |
needs: install-deps | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- uses: pnpm/action-setup@v3 | |
with: | |
version: 8 | |
- run: git fetch --no-tags --prune --depth=1 origin develop | |
- name: Cache node modules | |
uses: actions/cache@v4 | |
with: | |
path: node_modules | |
key: npm-dependencies-${{ hashFiles('pnpm-lock.yaml') }} | |
- run: pnpm nx affected --target=lint --parallel=3 --configuration=ci --base=${{ steps.set-shas.main-branch-name }} --head=${{ steps.set-shas.last-successful-event }} | |
build: | |
runs-on: ubuntu-latest | |
needs: install-deps | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- uses: pnpm/action-setup@v3 | |
with: | |
version: 8 | |
- run: git fetch --no-tags --prune --depth=1 origin develop | |
- name: Cache node modules | |
uses: actions/cache@v4 | |
with: | |
path: node_modules | |
key: npm-dependencies-${{ hashFiles('pnpm-lock.yaml') }} | |
- run: pnpm nx affected --target=lint --parallel=3 --configuration=ci --base=${{ steps.set-shas.main-branch-name }} --head=${{ steps.set-shas.last-successful-event }} |