-
Notifications
You must be signed in to change notification settings - Fork 0
53 lines (46 loc) · 1.75 KB
/
buildRunWorkflow.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
# This is a workflow to get source code and run tests of common functions
name: Build and Run
# Controls when the action will run. Workflow runs when manually triggered using the UI or API.
on:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Allows you to run this workflow every time a commit is pushed to the repository
push:
# Allows you to run this workflow every time a pull request is opened or updated
pull_request:
# Schedule a workflow to run automatically
schedule:
- cron: '0 2 * * *'
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# Job
Build-and-Run-Tests:
# Runner
runs-on: ubuntu-latest
steps:
# Step: Checkout source code
- name: Checkout source code
uses: actions/checkout@main
# Step: Setup CMake
- name: Setup CMake
uses: jwlawson/[email protected]
# Step: Tool Versions
- name: Tool Versions
run: cmake --version
# Step: Build all the Libraries and Executables
- name: Build all the Libraries and Executables
run: |
mkdir build
cd build
cmake ..
cmake --build .
# Step: Run all test executables in the output/exe/main directory
- name: Run Main Executable
run: |
chmod +x .github/workflows/testRunner/runMain.sh
.github/workflows/testRunner/runMain.sh
# Step: Run all test executables in the output/exe/test directory
- name: Run all GTests Executables
run: |
chmod +x .github/workflows/testRunner/runGTests.sh
.github/workflows/testRunner/runGTests.sh