forked from lf-lang/lingua-franca
-
Notifications
You must be signed in to change notification settings - Fork 0
130 lines (107 loc) · 3.52 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
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
# Main workflow for testing the Lingua Franca compiler.
name: CI
on:
# Trigger this workflow on push events, but only on master.
push:
branches:
- master
# Trigger this workflow also on pull_request events, but ignore the 'nightly' branch.
pull_request:
branches-ignore:
- 'nightly'
env:
# 2020.11
vcpkgGitRef: 0bf3923f9fab4001c00f0f429682a0853b5749e0
jobs:
# Cancel previous workflow runs.
cancel:
uses: lf-lang/lingua-franca/.github/workflows/cancel.yml@master
# Test the Gradle and Maven build.
build:
uses: lf-lang/lingua-franca/.github/workflows/build.yml@master
needs: cancel
# Build the tools used for processing execution traces
build-tracing-tools:
uses: lf-lang/lingua-franca/.github/workflows/build-trace-tools.yml@master
needs: cancel
# Check that automatic code formatting works.
# TODO: Uncomment after fed-gen is merged.
# format:
# uses: lf-lang/lingua-franca/.github/workflows/format.yml@master
# needs: cancel
# Run the unit tests.
unit-tests:
uses: lf-lang/lingua-franca/.github/workflows/unit-tests.yml@master
needs: cancel
# Run tests for the standalone compiler.
cli-tests:
uses: lf-lang/lingua-franca/.github/workflows/cli-tests.yml@master
needs: cancel
# Run the C benchmark tests.
c-benchmark-tests:
uses: lf-lang/benchmarks-lingua-franca/.github/workflows/benchmark-tests.yml@main
with:
target: 'C'
needs: cancel
# Run tests for Eclipse.
eclipse-tests:
uses: lf-lang/lingua-franca/.github/workflows/eclipse-tests.yml@master
needs: cancel
# Run language server tests.
lsp-tests:
uses: lf-lang/lingua-franca/.github/workflows/lsp-tests.yml@master
needs: cancel
# Run the C integration tests.
c-tests:
uses: lf-lang/lingua-franca/.github/workflows/c-tests.yml@master
needs: cancel
# Run the C Arduino integration tests.
c-arduino-tests:
uses: lf-lang/lingua-franca/.github/workflows/c-arduino-tests.yml@master
needs: cancel
# Run the C Zephyr integration tests.
c-zephyr-tests:
uses: lf-lang/lingua-franca/.github/workflows/c-zephyr-tests.yml@master
needs: cancel
# Run the CCpp integration tests.
ccpp-tests:
uses: lf-lang/lingua-franca/.github/workflows/c-tests.yml@master
with:
use-cpp: true
needs: cancel
# Run the C++ benchmark tests.
cpp-benchmark-tests:
uses: lf-lang/benchmarks-lingua-franca/.github/workflows/benchmark-tests.yml@main
with:
target: 'Cpp'
needs: cancel
# Run the C++ integration tests.
cpp-tests:
uses: lf-lang/lingua-franca/.github/workflows/cpp-tests.yml@master
needs: cancel
# Run the C++ integration tests on ROS2.
cpp-ros2-tests:
uses: lf-lang/lingua-franca/.github/workflows/cpp-ros2-tests.yml@master
needs: cancel
# Run the Python integration tests.
py-tests:
uses: lf-lang/lingua-franca/.github/workflows/py-tests.yml@master
needs: cancel
# Run the Rust integration tests.
rs-tests:
uses: lf-lang/lingua-franca/.github/workflows/rs-tests.yml@master
needs: cancel
# Run the Rust benchmark tests.
rs-benchmark-tests:
uses: lf-lang/benchmarks-lingua-franca/.github/workflows/benchmark-tests.yml@main
with:
target: 'Rust'
needs: cancel
# Run the TypeScript integration tests.
ts-tests:
uses: lf-lang/lingua-franca/.github/workflows/ts-tests.yml@master
needs: cancel
# Run the serialization tests
serialization-tests:
uses: lf-lang/lingua-franca/.github/workflows/serialization-tests.yml@master
needs: cancel