[READ-ONLY] Mirror of https://github.com/danielroe/cross-origin-storage. Load shared dependencies from Cross-Origin Storage (COS).
cross-origin-storage
experimental
nuxt
vite
vite-plugin
1name: ci
2
3on:
4 push:
5 branches:
6 - main
7 pull_request:
8 branches:
9 - main
10
11permissions: {}
12
13jobs:
14 lint:
15 runs-on: ubuntu-latest
16 steps:
17 - uses: actions/checkout@v6
18 - uses: actions/setup-node@v6
19 with:
20 node-version: 24
21 - run: npm i -g --force corepack@latest && corepack enable
22 - name: Install dependencies
23 run: pnpm install --frozen-lockfile
24 - name: Lint
25 run: pnpm lint
26
27 test:
28 runs-on: ubuntu-latest
29 steps:
30 - uses: actions/checkout@v6
31 - uses: actions/setup-node@v6
32 with:
33 node-version: 24
34 - run: npm i -g --force corepack@latest && corepack enable
35 - name: Install dependencies
36 run: pnpm install --frozen-lockfile
37
38 # nuxt-cos's tests import the built vite plugin and need the Nuxt stub.
39 - name: Build packages
40 run: pnpm build
41 - name: Prepare nuxt-cos
42 run: pnpm --filter nuxt-cos dev:prepare
43
44 - name: Install Playwright browser
45 run: pnpm --filter vite-plugin-cross-origin-storage exec playwright-core install --with-deps chromium
46
47 - name: Test
48 # xvfb provides a display so the COS extension can run in a headed
49 # Chrome for Testing instance; extensions do not load headless.
50 run: xvfb-run --auto-servernum pnpm test
51
52 test-types:
53 runs-on: ubuntu-latest
54 steps:
55 - uses: actions/checkout@v6
56 - uses: actions/setup-node@v6
57 with:
58 node-version: 24
59 - run: npm i -g --force corepack@latest && corepack enable
60 - name: Install dependencies
61 run: pnpm install --frozen-lockfile
62 - name: Build packages
63 run: pnpm build
64 - name: Prepare nuxt-cos
65 run: pnpm --filter nuxt-cos dev:prepare
66 - name: Type test
67 run: pnpm test:types