-
Notifications
You must be signed in to change notification settings - Fork 1
/
action.yml
59 lines (49 loc) · 1.72 KB
/
action.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
name: 'tsan_build_test'
description: 'Compile code with colcon and using TSAN flags, and run colcon test.'
inputs:
packages_names:
description: 'Name of the colcon packages to build and test'
required: true
colcon_meta_file:
description: 'colcon.meta file to set cmake options. If empty, it does not use any file'
required: false
default: ''
cmake_args:
description: 'flags to colcon build execution'
required: false
default: ''
ctest_args:
description: 'flags to colcon test execution'
required: false
default: '--label-exclude "xfail|xtsan"'
workspace:
description: 'Workspace to build'
required: false
default: '${{ github.workspace }}'
workspace_dependencies:
description: 'Workspace to source where dependencies are'
required: false
default: ''
outputs:
ctest_results_path:
description: "Path to test results"
value: ${{ steps.build_and_test.outputs.ctest_results_path }}
runs:
using: composite
steps:
- name: Build and test
id: build_and_test
env:
# GCC 11.3 (Ubuntu Jammy default) produces several false positives regarding timed synchronization protocols
# These issues were fixed in GCC 12 so we upgrade to that version.
CC: gcc-12
CXX: g++-12
uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@main
with:
packages_names: ${{ inputs.packages_names }}
colcon_meta_file: ${{ inputs.colcon_meta_file }}
cmake_args: '-DBUILD_TESTS=ON -DTSAN_BUILD=ON ${{ inputs.cmake_args }}'
ctest_args: ${{ inputs.ctest_args }}
workspace: ${{ inputs.workspace }}
workspace_dependencies: ${{ inputs.workspace_dependencies }}
cmake_build_type: Debug