Repository navigation
79 lines (76 loc) · 2.89 KB
/
Copy pathstarter-ci.yml
File metadata and controls
79 lines (76 loc) · 2.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
name: Starter CI
on:
pull_request:
paths:
- ".github/workflows/starter-ci.yml"
- "starters/**"
- "scripts/check-starter.sh"
- "scripts/starter-catalog.sh"
- "scripts/starter-catalog.test.mjs"
- "scripts/starter-ci-matrix.sh"
- "scripts/create-prototype-repo.sh"
- "scripts/create-prototype-repo.test.mjs"
- "scripts/setup-replica-plugin.test.mjs"
- "scripts/install-starter.sh"
push:
branches: [main]
paths:
- ".github/workflows/starter-ci.yml"
- "starters/**"
- "scripts/check-starter.sh"
- "scripts/starter-catalog.sh"
- "scripts/starter-catalog.test.mjs"
- "scripts/starter-ci-matrix.sh"
- "scripts/create-prototype-repo.sh"
- "scripts/create-prototype-repo.test.mjs"
- "scripts/setup-replica-plugin.test.mjs"
- "scripts/install-starter.sh"
permissions:
contents: read
jobs:
catalog:
runs-on: ubuntu-latest
outputs:
starters: ${{ steps.catalog.outputs.starters }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- id: catalog
run: |
starters="$(bash scripts/starter-ci-matrix.sh)"
echo "starters=$starters" >> "$GITHUB_OUTPUT"
tooling:
name: Starter tooling (Node ${{ matrix.node }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node: [24, 26]
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ matrix.node }}
- run: node --test scripts/create-prototype-repo.test.mjs scripts/setup-replica-plugin.test.mjs scripts/select-ci-suites.test.mjs
test:
name: Starter checks${{ matrix.starter.id != 'minimal' && format(' ({0})', matrix.starter.id) || '' }}${{ matrix.node == 26 && ' (Node 26)' || '' }}
needs: catalog
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node: [24, 26]
starter: ${{ fromJSON(needs.catalog.outputs.starters) }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: ${{ matrix.node }}
cache: npm
cache-dependency-path: ${{ matrix.starter.directory }}/package-lock.json
- run: bash scripts/check-starter.sh "${{ matrix.starter.id }}" "$RUNNER_TEMP/prototype"
env:
# Bot commit identity: https://github.com/actions/checkout#push-a-commit-using-the-built-in-token
GIT_AUTHOR_NAME: github-actions[bot]
GIT_AUTHOR_EMAIL: 41898282+github-actions[bot]@users.noreply.github.com
GIT_COMMITTER_NAME: github-actions[bot]
GIT_COMMITTER_EMAIL: 41898282+github-actions[bot]@users.noreply.github.com