|
4 | 4 | push: |
5 | 5 | pull_request: |
6 | 6 |
|
7 | | -env: |
8 | | - # Used to differentiate from other slices of the cache for other workflow runs, and to forcefully bust the cache when renamed |
9 | | - CACHE_KEY_BASE: ci@v1 |
10 | | - |
11 | 7 | jobs: |
12 | | - setup: |
13 | | - name: Setup |
14 | | - runs-on: ubuntu-latest |
15 | | - steps: |
16 | | - - name: Checkout repository |
17 | | - uses: actions/checkout@v5 |
18 | | - |
19 | | - - name: Set up Deno |
20 | | - uses: denoland/setup-deno@v2 |
21 | | - with: |
22 | | - deno-version: 2.x |
23 | | - cache-hash: ${{ env.CACHE_KEY_BASE }}-${{ hashFiles('deno.lock') }} |
24 | | - |
25 | | - - name: Install dependencies |
26 | | - run: deno install |
27 | | - |
28 | | - test: |
29 | | - name: Test |
30 | | - needs: [setup] |
31 | | - runs-on: ubuntu-latest |
32 | | - steps: |
33 | | - - name: Checkout repository |
34 | | - uses: actions/checkout@v5 |
35 | | - |
36 | | - # Now the Deno cache should be warmed up, so this should be much faster |
37 | | - - name: Set up Deno |
38 | | - uses: denoland/setup-deno@v2 |
39 | | - with: |
40 | | - deno-version: 2.x |
41 | | - cache-hash: ${{ env.CACHE_KEY_BASE }}-${{ hashFiles('deno.lock') }} |
42 | | - |
43 | | - - name: Test |
44 | | - run: deno test -P --no-prompt --coverage --shuffle |
45 | | - |
46 | | - - name: Upload coverage report |
47 | | - uses: actions/upload-artifact@v4 |
48 | | - with: |
49 | | - name: coverage-report |
50 | | - path: | |
51 | | - coverage/html |
52 | | - coverage/lcov.info |
53 | | -
|
54 | | - - name: Upload raw coverage files |
55 | | - uses: actions/upload-artifact@v4 |
56 | | - with: |
57 | | - name: coverage-report-raw |
58 | | - path: coverage/*.json |
59 | | - |
60 | | - lint: |
61 | | - name: Lint |
62 | | - needs: [setup] |
63 | | - runs-on: ubuntu-latest |
64 | | - steps: |
65 | | - - name: Checkout repository |
66 | | - uses: actions/checkout@v5 |
67 | | - |
68 | | - # Now the Deno cache should be warmed up, so this should be much faster |
69 | | - - name: Set up Deno |
70 | | - uses: denoland/setup-deno@v2 |
71 | | - with: |
72 | | - deno-version: 2.x |
73 | | - cache-hash: ${{ env.CACHE_KEY_BASE }}-${{ hashFiles('deno.lock') }} |
74 | | - |
75 | | - - name: Lint |
76 | | - run: deno run --allow-env --allow-run --no-prompt npm:@biomejs/biome ci |
77 | | - |
78 | | - check: |
79 | | - name: Check |
80 | | - needs: [setup] |
81 | | - runs-on: ubuntu-latest |
82 | | - steps: |
83 | | - - name: Checkout repository |
84 | | - uses: actions/checkout@v5 |
85 | | - |
86 | | - # Now the Deno cache should be warmed up, so this should be much faster |
87 | | - - name: Set up Deno |
88 | | - uses: denoland/setup-deno@v2 |
89 | | - with: |
90 | | - deno-version: 2.x |
91 | | - cache-hash: ${{ env.CACHE_KEY_BASE }}-${{ hashFiles('deno.lock') }} |
92 | | - |
93 | | - - name: Lint |
94 | | - run: deno check |
| 8 | + run-procedure: |
| 9 | + uses: ./.github/workflows/fn-ci.yml |
| 10 | + with: |
| 11 | + cache-key-base: ci@v1 |
0 commit comments