-
Notifications
You must be signed in to change notification settings - Fork 0
177 lines (166 loc) · 5.03 KB
/
giraffe_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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
name: Giraffe CI
on:
pull_request:
branches: [ main ]
jobs:
build_gfs:
name: Build / Giraffe Flight System
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- name: Build Giraffe Flight System
run: cd build && make giraffe_flight_system -j 4
build_gdl_server:
name: Build / Giraffe Data Link Server
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- name: Build Giraffe Data Link
run: cd build && make giraffe_data_link_core -j 4
build_utilities:
name: Build / Utilities
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- name: Build eepmake
run: cd build && make eepmake -j 4
- name: Build eepdump
run: cd build && make eepdump -j 4
common_tests_cpp:
name: Unit Tests / Common C++
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- name: Build Test
run: cd build && make unit_test_common -j 4
- name: Run Test
run: cd build/bin/tests && ./unit_test_common
gfs_tests:
name: Unit Tests / Giraffe Flight System
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- name: Build Test
run: cd build && make giraffe_flight_system_test -j 4
- name: Run Test
run: cd build/bin/tests && ./giraffe_flight_system_test
data_link_tests:
name: Unit Tests / Data Link
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- name: Build Test
run: cd build && make gdl_test -j 4
- name: Run Test
run: cd build/bin/tests && ./gdl_test
common_tests_js:
name: Unit Tests / Common JS
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
with:
submodules: recursive
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
- run: npm install
working-directory: ./src/common/protocol
- run: npm test
working-directory: ./src/common/protocol
ggs_tests:
name: Unit Tests / Giraffe Ground Station
runs-on: ubuntu-latest
container:
image: joshuajerred/giraffe:latest
options: --user root
steps:
- uses: actions/checkout/@v1
with:
submodules: recursive
- name: Take Ownership of Source
run: git config --global --add safe.directory '*'
- name: CMake Configure
run: mkdir build -p && cd build && cmake ..
- run: npm install
working-directory: ./src/ground_station
- run: npm test
working-directory: ./src/ground_station
gwc_tests:
name: Unit Tests / Giraffe Web Client
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: '22.x'
- run: npm install
working-directory: ./src/web_client
- run: npm test
working-directory: ./src/web_client
static_analysis:
name: Static Analysis
runs-on: ubuntu-latest
steps:
- uses: actions/checkout/@v3
with:
submodules: recursive
- name: Install cmake-lint
run: pip install cmakelint
- name: Run cmake-lint
run: cmakelint