File: azure-pipelines.yml

package info (click to toggle)
cyclonedds 0.10.5-1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 21,372 kB
  • sloc: ansic: 224,361; perl: 1,904; xml: 1,894; yacc: 1,018; sh: 882; python: 106; makefile: 94
file content (149 lines) | stat: -rw-r--r-- 5,098 bytes parent folder | download
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
#
# Copyright(c) 2021 ZettaScale Technology and others
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v. 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
# v. 1.0 which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
#

trigger: [ '*' ]
pr: [ '*' ]


variables:
  cyclonedds_uri: '<CycloneDDS><Domain><Internal><EnableExpensiveChecks>rhc,whc</EnableExpensiveChecks><LivelinessMonitoring>true</LivelinessMonitoring></Internal><Tracing><Verbosity>config</Verbosity><OutputFile>stderr</OutputFile></Tracing></Domain></CycloneDDS>'

jobs:
- job: BuildAndTest
  pool:
    vmImage: $(image)
  strategy:
    matrix:
      'Ubuntu 20.04 LTS with GCC 10 (Debug, x86_64)':
        image: ubuntu-20.04
        analyzer: on
        # not enabling "undefined" because of some false positives
        sanitizer: address
        cc: gcc-10
        coverage: on
      'Ubuntu 20.04 LTS with GCC 10 (Debug, x86_64, Iceoryx)':
        image: ubuntu-20.04
        #analyzer: on  # disabled for now because of warnings
        sanitizer: address,undefined
        iceoryx: on
        cc: gcc-10
        coverage: on
      'Ubuntu 20.04 LTS with GCC 10 (Release, x86_64)':
        image: ubuntu-20.04
        build_type: Release
        sanitizer: undefined
        cc: gcc-10
      'Ubuntu 20.04 LTS with GCC 10 (Debug, x86_64, security only)':
        image: ubuntu-20.04
        sanitizer: address,undefined
        ssl: off
        lifespan: off
        deadline: off
        type_discovery: off
        topic_discovery: off
        idlc_testing: off # temporary dislabled because of passing -t option to idlc in this test for recursive types
        cc: gcc-10
      'Ubuntu 22.04 LTS with GCC 10 (Debug, x86_64, no tests)':
        image: ubuntu-22.04
        cc: gcc-10
        testing: off
        idlc_xtests: off
      'Ubuntu 22.04 LTS with Clang 12 (Debug, x86_64)':
        image: ubuntu-22.04
        analyzer: on
        sanitizer: address,undefined
        cc: clang-10
      'Ubuntu 20.04 LTS with Clang 10 (Debug, x86_64, no security)':
        image: ubuntu-20.04
        sanitizer: address,undefined
        security: off
        cc: clang-10
      'Ubuntu 20.04 LTS with Clang 10 (Release, x86_64, no topic discovery)':
        image: ubuntu-20.04
        build_type: Release
        sanitizer: undefined
        topic_discovery: off
        idlc_testing: off # temporary dislabled because of passing -t option to idlc in this test for recursive types
        cc: clang-10
      'macOS 11 with Clang 12 (Debug, x86_64)':
        image: macOS-11
        sanitizer: address,undefined
        cc: clang
      'macOS 11 with Clang 12 (Release, x86_64)':
        image: macOS-11
        build_type: Release
        sanitizer: undefined
        cc: clang
      'macOS 11 with Clang 13 (Release, x86_64)':
        image: macOS-11
        build_type: Release
        sanitizer: undefined
        cc: clang
        coverage: on
      'macOS 12 with gcc 12 (Debug, analyzer, x86_64)':
        image: macOS-12
        sanitizer: undefined
        deadline_update_skip: on
        cc: gcc-12
        analyzer: on
      # 32-bit Windows: without SSL/security because Chocolateley only provides 64-bit OpenSSL
      'Windows 2019 with Visual Studio 2019 (Visual Studio 2017, Debug, x86, no security)':
        arch: x86
        image: windows-2019
        ssl: off
        security: off
        idlc_xtests: off
        generator: 'Visual Studio 16 2019'
        toolset: v141
      'Windows 2019 with Visual Studio 2019 (Debug, x86_64)':
        image: windows-2019
        idlc_testing: off
        generator: 'Visual Studio 16 2019'
      'Windows 2019 with Visual Studio 2019 (Release, x86_64)':
        image: windows-2019
        build_type: Release
        idlc_testing: off
        generator: 'Visual Studio 16 2019'
      #'Windows 2019 with GCC 10 (Debug, x86_64)':
      #  image: windows-2019
      #  build_type: Debug
      #  idlc_testing: off
      #  generator: 'MinGW Makefiles'
      #  cc: 'C:/msys64/mingw64/bin/gcc.exe'
      #  cxx: 'C:/msys64/mingw64/bin/g++.exe'

  steps:
    - template: /.azure/templates/build-test.yml

- job: CoverageAndTestsReport
  dependsOn: BuildAndTest
  condition: succeededOrFailed()  # Always run, even when failed tests, because they should be reported in the dasboard of course!
  pool:
    vmImage: ubuntu-20.04
  steps:
  - bash: |
      mkdir coverage
  - task: DownloadPipelineArtifact@2
    inputs:
      path: coverage
    displayName: Download Coverage
  - task: UsePythonVersion@0
  - bash: |
      python -m pip install gcovr==5.0 --user --upgrade
      ls coverage
      gcovr -a coverage/**/*.json --xml-pretty --output coverage.xml
    displayName: Combine coverage reports
  - task: PublishCodeCoverageResults@1
    displayName: Publish Cobertura Coverage Report
    inputs:
      codeCoverageTool: Cobertura
      summaryFileLocation: coverage.xml