1+ # Main CI for DDS Router repository
2+ # This is executed with every PullRequest (new or update), any merge in main and every night
3+ #
4+ # These jobs that require to install fastrtps library uses the artifact generated for the nightly job
5+ # so they do not have to compile the whole fastrtps project. This saves huge amount of time.
6+ #
7+ # JOBS:
8+ # - windows-build-test
9+ # - windows-latest
10+ # - [Debug | Release]
11+ # - compile up-to ddsrouter_tool ; run tests
12+ # - ubuntu-main-test
13+ # - ubuntu-20.04
14+ # - Debug
15+ # - compile all ; run tests ; calculate coverage
16+ # - ubuntu-release-test
17+ # - [ ubuntu-20.04 | ubuntu-22.04 ]
18+ # - Release
19+ # - compile all ; run tests
20+ # - ubuntu-build-test-flaky
21+ # - ubuntu-20.04
22+ # - Debug
23+ # - compile all ; run flaky tests
24+ # - clang-tidy
25+ # - ubuntu-20.04
26+ # - Release
27+ # - compile all ; test clang-tidy
28+ # - uncrustify
29+ # - ubuntu-20.04
30+ # - test uncrustify
31+ #
32+ # The main job is ubuntu-main-test which compiles all packages (including documentation), run every test and calculates coverage.
33+ # This main job uses ubuntu 20.04 LTS (focal fossa).
34+
135name : test
236
337on :
1953 cmake-config :
2054 - ' Release'
2155 - ' Debug'
56+ windows-version :
57+ - ' windows-2019'
58+ - ' windows-latest'
2259 env :
2360 CXXFLAGS : /MP
2461 OPENSSL64_ROOT : " C:/Program Files/OpenSSL-Win64"
5592 with :
5693 workflow : build_fastdds.yml
5794 path : ${{ github.workspace }}\..\fastdds\install
58- name : windows_ ${{ matrix.cmake-config }}_fastdds_install
95+ name : ${{ matrix.windows-version }}_ ${{ matrix.cmake-config }}_fastdds_install
5996 run_id : ${{ env.fastdds_job_id }}
6097
6198 - name : Install ddsrouter_cmake
@@ -121,8 +158,8 @@ jobs:
121158 cmake_build_type : ${{ matrix.cmake-config }}
122159 if : always()
123160
124- ubuntu-build -test :
125- runs-on : ubuntu-latest
161+ ubuntu-main -test :
162+ runs-on : ubuntu-20.04
126163 environment :
127164 name : codecov
128165
@@ -153,7 +190,7 @@ jobs:
153190 with :
154191 workflow : build_fastdds.yml
155192 path : /home/runner/work/fastdds/install
156- name : ubuntu_fastdds_install
193+ name : ubuntu-20.04_fastdds_install
157194 run_id : ${{ env.fastdds_job_id }}
158195
159196 - name : Update colcon mixin
@@ -261,10 +298,14 @@ jobs:
261298 path : log/
262299 if : always()
263300
301+
264302 ubuntu-release-test :
265- runs-on : ubuntu-latest
266- environment :
267- name : codecov
303+ runs-on : ${{ matrix.ubuntu-version }}
304+ strategy :
305+ matrix :
306+ ubuntu-version :
307+ - ' ubuntu-20.04'
308+ - ' ubuntu-22.04'
268309
269310 steps :
270311 - name : Sync eProsima/DDS-Router repository
@@ -293,7 +334,7 @@ jobs:
293334 with :
294335 workflow : build_fastdds.yml
295336 path : /home/runner/work/fastdds/install
296- name : ubuntu_fastdds_install
337+ name : ${{ matrix.ubuntu-version }}_fastdds_install
297338 run_id : ${{ env.fastdds_job_id }}
298339
299340 - name : Update colcon mixin
@@ -330,8 +371,9 @@ jobs:
330371 path : log/
331372 if : always()
332373
374+
333375 ubuntu-build-test-flaky :
334- runs-on : ubuntu-latest
376+ runs-on : ubuntu-20.04
335377 environment :
336378 name : codecov
337379
@@ -360,7 +402,7 @@ jobs:
360402 with :
361403 workflow : build_fastdds.yml
362404 path : /home/runner/work/fastdds/install
363- name : ubuntu_fastdds_install
405+ name : ubuntu-20.04_fastdds_install
364406 run_id : ${{ env.fastdds_job_id }}
365407
366408 - name : Update colcon mixin
@@ -392,7 +434,7 @@ jobs:
392434 --timeout 60
393435
394436 clang-tidy :
395- runs-on : ubuntu-latest
437+ runs-on : ubuntu-20.04
396438 steps :
397439 - name : Sync eProsima/DDS-Router repository
398440 uses : actions/checkout@v2
@@ -418,7 +460,7 @@ jobs:
418460 with :
419461 workflow : build_fastdds.yml
420462 path : /home/runner/work/fastdds/install
421- name : ubuntu_fastdds_install
463+ name : ubuntu-20.04_fastdds_install
422464 run_id : ${{ env.fastdds_job_id }}
423465
424466 - name : Build workspace
@@ -443,7 +485,7 @@ jobs:
443485 path : ${{ github.workspace }}/clang_results.yml
444486
445487 uncrustify :
446- runs-on : ubuntu-latest
488+ runs-on : ubuntu-20.04
447489 steps :
448490 - name : Sync eProsima/DDS-Router repository
449491 uses : actions/checkout@v2
0 commit comments