mirror of
https://github.com/Unitech/pm2.git
synced 2025-12-08 20:35:53 +00:00
57 lines
1.3 KiB
YAML
57 lines
1.3 KiB
YAML
name: Node.js CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
|
|
node-tests:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
|
|
strategy:
|
|
matrix:
|
|
node-version: [14.x, 22.x]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
cache: 'npm'
|
|
- name: Install Python
|
|
run: sudo apt install python3
|
|
- name: Install PHP CLI
|
|
run: sudo apt install php-cli
|
|
- name: Install Node.js dependencies
|
|
run: npm install
|
|
- name: Run end-to-end tests
|
|
run: npm run test:e2e
|
|
- name: Run unit tests
|
|
run: npm run test:unit
|
|
|
|
bun-tests:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v3
|
|
- name: Remove Node.js installed by setup-node action (if any)
|
|
run: |
|
|
if command -v node &> /dev/null; then
|
|
sudo rm -rf "$(which node)"
|
|
fi
|
|
if command -v npm &> /dev/null; then
|
|
sudo rm -rf "$(which npm)"
|
|
fi
|
|
|
|
- name: Setup Bun
|
|
uses: oven-sh/setup-bun@v1
|
|
- name: Install dependencies using Bun
|
|
run: bun install
|
|
- name: Run end-to-end tests with Bun
|
|
run: bun run test:e2e
|
|
- name: Run unit tests with Bun
|
|
run: bun run test:unit
|