Skip to content

Commit

Permalink
update ci
Browse files Browse the repository at this point in the history
  • Loading branch information
JuribaDev committed Aug 23, 2024
1 parent 5618f41 commit 6b51f0e
Showing 1 changed file with 45 additions and 16 deletions.
61 changes: 45 additions & 16 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,39 +1,68 @@
name: CI

on:
push:
pull_request:
branches:
- main
- dev
pull_request:

permissions:
actions: read
contents: read

jobs:
main:
lint-and-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
fetch-depth: 0

# This enables task distribution via Nx Cloud
# Run this command as early as possible, before dependencies are installed
# Learn more at https://nx.dev/ci/reference/nx-cloud-cli#npx-nxcloud-startcirun
- run: npx nx-cloud start-ci-run --distribute-on="3 linux-medium-js" --stop-agents-after="e2e-ci"
node-version: '20'
cache: 'npm'
- run: npm ci --legacy-peer-deps
- run: npx nx run-many --target=lint --all
- run: npx nx run-many --target=build --all

# Cache node_modules
test:
runs-on: ubuntu-latest
needs: lint-and-build
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
node-version: '20'
cache: 'npm'
- run: npm ci --legacy-peer-deps
- run: npx nx run-many --target=test --all
- uses: actions/upload-artifact@v3
with:
name: test-coverage
path: 'coverage/apps/**'

e2e:
runs-on: ubuntu-latest
needs: lint-and-build
services:
mongodb:
image: mongo:4.4
ports:
- 27017:27017
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- run: npm ci --legacy-peer-deps
- uses: nrwl/nx-set-shas@v4
- name: Install Xvfb
run: sudo apt-get update && sudo apt-get install -y xvfb
- name: Run E2E Tests
run: |
xvfb-run --auto-servernum npx nx run server:serve &
sleep 10 # Give the server some time to start
xvfb-run --auto-servernum npx nx run-many --target=e2e --all
- uses: actions/upload-artifact@v3
with:
name: e2e-results
path: cypress/videos/**

# Prepend any command with "nx-cloud record --" to record its logs to Nx Cloud
# - run: npx nx-cloud record -- echo Hello World
# Nx Affected runs only tasks affected by the changes in this PR/commit. Learn more: https://nx.dev/ci/features/affected
- run: npx nx affected -t lint test build e2e-ci

0 comments on commit 6b51f0e

Please sign in to comment.