-
Notifications
You must be signed in to change notification settings - Fork 1
79 lines (66 loc) · 2.08 KB
/
ci.yml
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: CI
on: [push, pull_request]
env:
npm_config_engine_strict: true
jobs:
build:
runs-on: ubuntu-latest
steps:
# checkout a dependent project
- name: Checkout cloud-core
uses: actions/checkout@v4
with:
repository: tstibbs/cloud-core
path: 'cloud-core' # will resolve to /home/runner/work/geo-bagging/geo-bagging/cloud-core
# checkout 'this' project
- name: Checkout geo-bagging
uses: actions/checkout@v4
with:
path: 'geo-bagging' # will resolve to /home/runner/work/geo-bagging/geo-bagging/geo-bagging
- name: Set up node
uses: actions/setup-node@v4
with:
node-version: 20.11.x
- name: Set up environment
run: mkdir cdk.tmp
working-directory: geo-bagging/backend
- name: Set up test environment
run: cp dummy.env .env
working-directory: geo-bagging/backend
- name: Load cloud-core dependencies
run: npm ci
working-directory: cloud-core/aws/utils
- name: Load cloud-core-ui dependencies
run: npm ci
working-directory: cloud-core/ui
# the ordering is weird, because we're trying to get information about fundamental failures quicker - i.e. breadth-first not depth-first
# get all deps
- name: "get deps: root"
run: npm ci
working-directory: geo-bagging
- name: "get deps: data-prep"
run: npm ci
working-directory: geo-bagging/data-prep
- name: "get deps: backend"
run: npm ci
working-directory: geo-bagging/backend
- name: "get deps: UI"
run: npm ci
working-directory: geo-bagging/ui
# build
- name: "build: backend"
run: npm run testsynth
working-directory: geo-bagging/backend
- name: "build: UI"
run: npm run build
working-directory: geo-bagging/ui
# test
- name: "test: data-prep"
run: npm run test
working-directory: geo-bagging/data-prep
- name: "test: backend"
run: npm run test
working-directory: geo-bagging/backend
- name: "test: UI"
run: npm run test
working-directory: geo-bagging/ui