AikidoSec-safe-chain/.github/workflows/e2e.yml
2025-07-18 12:30:58 +02:00

67 lines
1.4 KiB
YAML

name: E2E Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
e2e-tests:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
node-version: [18, 20, 22]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Setup package managers (Ubuntu/macOS)
if: matrix.os != 'windows-latest'
run: |
# Install yarn
npm install -g yarn
# Install pnpm
npm install -g pnpm
# Verify installations
npm --version
yarn --version
pnpm --version
- name: Setup package managers (Windows)
if: matrix.os == 'windows-latest'
run: |
# Install yarn
npm install -g yarn
# Install pnpm
npm install -g pnpm
# Verify installations
npm --version
yarn --version
pnpm --version
shell: pwsh
- name: Install safe-chain globally
run: npm install -g .
- name: Run linting
run: npm run lint
- name: Run E2E tests
run: npm run test:e2e