14 group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
15 cancel-in-progress: true
20 if: startsWith(github.ref_name, 'v')
21 runs-on: ubuntu-latest
24 uses: actions/checkout@v4
28 - name: Check Git tag format
30 _tag="${{ github.ref_name }}"
31 if ! printf "%s\n" "$_tag" | grep -q -P '^v(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(-(alpha|beta|rc)\.(0|[1-9][0-9]*))?$'; then
32 printf '[ERROR]: Git tag (%s) wrong format\n' "$_tag"
39 if: always() && (needs.version.result == 'success' || needs.version.result == 'skipped')
40 runs-on: ubuntu-latest
43 uses: actions/checkout@v4
48 uses: actions/setup-python@v4
50 - name: Install cmakelang
51 run: pip install cmakelang[YAML]
55 chmod u+x ./scripts/check.sh
63 if: always() && needs.code.result == 'success'
67 # TODO(carlocorradini) Add macos-latest
68 os: [ubuntu-latest, windows-latest]
69 build: [Debug, Release]
71 runs-on: ${{ matrix.os }}
74 uses: actions/checkout@v4
78 - name: Install Doxygen
79 uses: ssciwr/doxygen-install@v1
81 - name: Configure CMake
82 run: cmake -S . -B ./build -DCMAKE_BUILD_TYPE:STRING=${{ matrix.build }} -DDIS_VERSION:STRING=${{ matrix.dis }} -DBUILD_SHARED_LIBS:BOOL=FALSE -DKDIS_BUILD_DOCS:BOOL=TRUE -DKDIS_BUILD_EXAMPLES:BOOL=TRUE -DKDIS_BUILD_TESTS:BOOL=TRUE
85 run: cmake --build ./build --config ${{ matrix.build }}
88 run: ctest --verbose --test-dir ./build/tests --build-config ${{ matrix.build }}
90 # TODO(carlocorradini) Code coverage