Skip to content

Merge pull request #543 from jay-hodgson/dependabot-version-bumps #21

Merge pull request #543 from jay-hodgson/dependabot-version-bumps

Merge pull request #543 from jay-hodgson/dependabot-version-bumps #21

Workflow file for this run

# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Build/Test All Projects
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
# We should test all active LTS releases, but not until our test suite is less flaky
strategy:
matrix:
node-version: [18.x]
steps:
- uses: actions/[email protected]
with:
fetch-depth: 0
- uses: ./.github/actions/pnpm-setup-action
# Portals won't build without a configuration. For now, copy the test configuration.
# We may want to invert the model and give each portal its own project in the workspace, so we can build the portals in parallel.
- run: pnpm nx run portals:copy-test-configuration
- run: pnpm nx affected --target=build --base=remotes/origin/main
test:
runs-on:
labels: ubuntu-22.04-4core-16GBRAM-150GBSSD
# Job should not last longer than 60 minutes--and the larger runner is billed per-minute ;)
timeout-minutes: 60
steps:
- uses: actions/[email protected]
with:
fetch-depth: 0
- uses: ./.github/actions/pnpm-setup-action
- run: pnpm nx run portals:copy-test-configuration
- id: test
run: pnpm nx affected --target test --base=remotes/origin/main
- name: Upload test report
if: success() || steps.test.conclusion == 'failure'
uses: actions/upload-artifact@v3
with:
name: test-results
path: |
./packages/*/coverage/
./apps/*/coverage/
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
with:
fetch-depth: 0
- uses: ./.github/actions/pnpm-setup-action
- run: pnpm nx affected --target=lint --base=remotes/origin/main
typecheck:
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
with:
fetch-depth: 0
- uses: ./.github/actions/pnpm-setup-action
# Portals test configuration must be loaded for a successful type check
- run: pnpm nx run portals:copy-test-configuration
- run: pnpm nx affected --target=type-check --base=remotes/origin/main