diff --git a/.github/actions/project_dependencies/action.yml b/.github/actions/project_dependencies/action.yml index c329258..9441aea 100644 --- a/.github/actions/project_dependencies/action.yml +++ b/.github/actions/project_dependencies/action.yml @@ -1,4 +1,4 @@ -name: dependencies_ubuntu +name: dev_utils_dependencies_ubuntu description: Common first step for all jobs. Checkout repository, download dependencies and install required packages. inputs: @@ -7,6 +7,10 @@ inputs: description: Specify runs-on machine to download specific artifact required: true + cmake_build_type: + description: Specify cmake_build_type option to download specific artifact + required: true + custom_version_build: description: > Use the custom version build from eProsima-CI. @@ -14,10 +18,6 @@ inputs: required: true default: 'custom' - cmake_build_type: - description: Specify cmake_build_type option to download specific artifact - required: true - dependencies_artifact_postfix: description: Specify artifact postfix in case it wants to use a manual one required: false @@ -26,7 +26,7 @@ inputs: target_workspace: description: Specify directory to download dependencies required: false - default: './install' + default: ${{ github.workspace }}/install # This must be passed as an argument because actions do not access to workflow secrets: # Unrecognized named-value: 'secrets'. https://github.com/orgs/community/discussions/27054 @@ -45,6 +45,10 @@ runs: with: cmake_build_type: ${{ inputs.cmake_build_type }} + - name: Install yaml cpp dependency + uses: eProsima/eProsima-CI/multiplatform/install_yamlcpp@v0 + with: + cmake_build_type: ${{ inputs.cmake_build_type }} # Fast DDS artifact - name: Download dependencies artifact diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly-ubuntu-ci.yml similarity index 68% rename from .github/workflows/nightly.yml rename to .github/workflows/nightly-ubuntu-ci.yml index 9e50b15..9d42445 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly-ubuntu-ci.yml @@ -1,9 +1,8 @@ -# Nightly test workflow for dev-utils -name: nightly-dev-utils +# Nightly test workflow for Dev Utils +name: nightly-ubuntu-ci on: workflow_dispatch: - schedule: - cron: '0 5 * * *' @@ -11,16 +10,16 @@ jobs: reusable_tests_v2: name: reusable_tests_v2 - uses: ./.github/workflows/reusable-workflow.yml + uses: ./.github/workflows/reusable-ubuntu-ci.yml with: custom_version_build: 'v2' dependencies_artifact_postfix: '_nightly' - ref: '0.x' + ref: '2.x' secrets: inherit reusable_tests_v3: name: reusable_tests_v3 - uses: ./.github/workflows/reusable-workflow.yml + uses: ./.github/workflows/reusable-ubuntu-ci.yml with: custom_version_build: 'v3' dependencies_artifact_postfix: '_nightly' diff --git a/.github/workflows/nightly-windows-ci.yml b/.github/workflows/nightly-windows-ci.yml new file mode 100644 index 0000000..fb005d5 --- /dev/null +++ b/.github/workflows/nightly-windows-ci.yml @@ -0,0 +1,28 @@ +# Nightly test workflow for Dev Utils +name: nightly-windows-ci + +on: + workflow_dispatch: + schedule: + - cron: '0 5 * * *' + +jobs: + + reusable_tests_v2: + name: reusable_tests_v2 + uses: ./.github/workflows/reusable-windows-ci.yml + with: + custom_version_build: 'v2' + dependencies_artifact_postfix: '_nightly' + ref: '2.x' + secrets: inherit + + reusable_tests_v3: + name: reusable_tests_v3 + uses: ./.github/workflows/reusable-windows-ci.yml + with: + custom_version_build: 'v3' + dependencies_artifact_postfix: '_nightly' + ref: 'main' + secrets: inherit + diff --git a/.github/workflows/reusable-ubuntu-ci.yml b/.github/workflows/reusable-ubuntu-ci.yml new file mode 100644 index 0000000..cd45b9b --- /dev/null +++ b/.github/workflows/reusable-ubuntu-ci.yml @@ -0,0 +1,312 @@ +# Reusable workflow to run the following jobs: +# +# - multiplatform-tests +# - [ ubuntu-22.04 | ubuntu-24.04 ] +# - [ Debug | Release ] +# - execute tests in different versions of ubuntu with different build types +# +# - asan +# - ubuntu-22.04 +# - execute tests with ASAN flag +# +# - tsan +# - ubuntu-22.04 +# - execute tests with TSAN flag +# +# - clang +# - ubuntu-22.04 +# - execute clang-tidy check +# +# - coverage +# - ubuntu-22.04 +# - execute test with coverage flag and upload results +# +# - flaky +# - ubuntu-22.04 +# - execute flaky tests +# +# - docs +# - ubuntu-22.04 +# - execute docs compile and tests +# +# - uncrustify +# - ubuntu-22.04 +# - test uncrustify +# +# - python-linter +# - ubuntu-22.04 +# - test python linter +# + +name: ubuntu-ci + +on: + + workflow_call: + inputs: + + custom_version_build: + description: > + Version of Fast DDS build from eProsima-CI. + required: true + type: string + + dependencies_artifact_postfix: + description: > + Postfix name to add to artifact name to download dependencies. + This is use to download a specific artifact version from eProsima-CI. + required: true + default: '_nightly' + type: string + + ref: + description: > + The branch or tag name to checkout. + required: true + type: string + default: 'main' + +env: + code_packages_names: 'cmake_utils cpp_utils py_utils' + cpp_packages_names: 'cmake_utils cpp_utils' + py_packages_names: 'py_utils' + +jobs: + +##################################################################### +# TEST + + multiplatform-tests: + name: ${{ matrix.os }}-ci + strategy: + fail-fast: false + matrix: + os: + - ubuntu-22.04 + - ubuntu-24.04 + uses: ./.github/workflows/reusable-workflow.yml + with: + os: ${{ matrix.os }} + custom_version_build: ${{ inputs.custom_version_build || 'v3' }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix || '_nightly' }} + ref: ${{ inputs.ref }} + secrets: inherit + +##################################################################### +# ASAN + + asan: + runs-on: ubuntu-22.04 + steps: + + - name: Sync repository + uses: eProsima/eProsima-CI/external/checkout@v0 + with: + path: src + ref: ${{ inputs.ref }} + + - name: Download dependencies and install requirements + uses: ./src/.github/actions/project_dependencies + with: + os: ubuntu-22.04 + cmake_build_type: Debug + custom_version_build: ${{ inputs.custom_version_build }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} + secret_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Compile and run tests + id: compile_and_test + uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@main + with: + packages_names: ${{ env.cpp_packages_names }} + workspace_dependencies: install + cmake_build_type: Debug + cmake_args: -DBUILD_TESTS=ON -DASAN_BUILD=ON + ctest_args: --label-exclude "xfail|xtsan" + test_report_artifact: test_report_asan${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} + + + - name: Test Report + uses: eProsima/eProsima-CI/external/test-reporter@v0 + if: success() || failure() + with: + name: "Report: ASAN " + path: "${{ steps.compile_and_test.outputs.ctest_results_path }}*.xml" + working-directory: 'src' + list-tests: 'failed' + list-suites: 'failed' + +##################################################################### +# TSAN + + tsan: + runs-on: ubuntu-22.04 + steps: + + - name: Sync repository + uses: eProsima/eProsima-CI/external/checkout@v0 + with: + path: src + ref: ${{ inputs.ref }} + + - name: Download dependencies and install requirements + uses: ./src/.github/actions/project_dependencies + with: + os: ubuntu-22.04 + cmake_build_type: Debug + custom_version_build: ${{ inputs.custom_version_build }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }}_tsan + secret_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Compile and run tests + id: compile_and_test + uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0 + 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 + with: + packages_names: ${{ env.cpp_packages_names }} + workspace_dependencies: install + cmake_build_type: Debug + cmake_args: -DBUILD_TESTS=ON -DTSAN_BUILD=ON + ctest_args: --label-exclude "xfail|xasan" + test_report_artifact: test_report_tsan${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} + + - name: Test Report + uses: eProsima/eProsima-CI/external/test-reporter@v0 + if: success() || failure() + with: + name: "Report: TSAN " + path: "${{ steps.compile_and_test.outputs.ctest_results_path }}*.xml" + working-directory: 'src' + list-tests: 'failed' + list-suites: 'failed' + +##################################################################### +# CLANG + + clang: + runs-on: ubuntu-22.04 + steps: + + - name: Sync repository + uses: eProsima/eProsima-CI/external/checkout@v0 + with: + path: src + ref: ${{ inputs.ref }} + + - name: Download dependencies and install requirements + uses: ./src/.github/actions/project_dependencies + with: + os: ubuntu-22.04 + cmake_build_type: Release + custom_version_build: ${{ inputs.custom_version_build }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} + secret_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Compile and run tests + uses: eProsima/eProsima-CI/multiplatform/clang_build_test@v0 + with: + packages_names: ${{ env.cpp_packages_names }} + workspace_dependencies: install + + +##################################################################### +# COVERAGE + + coverage: + runs-on: ubuntu-22.04 + environment: + name: codecov + steps: + + - name: Sync repository + uses: eProsima/eProsima-CI/external/checkout@v0 + with: + path: src + ref: ${{ inputs.ref }} + + - name: Download dependencies and install requirements + uses: ./src/.github/actions/project_dependencies + with: + os: ubuntu-22.04 + cmake_build_type: Release + custom_version_build: ${{ inputs.custom_version_build }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} + secret_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Compile and run tests + uses: eProsima/eProsima-CI/ubuntu/coverage_build_test_upload@v0 + with: + packages_names: ${{ env.cpp_packages_names }} + workspace_dependencies: install + codecov_token: ${{ secrets.CODECOV_TOKEN }} + codecov_fix_file_path: src/codecov.yml + test_report_artifact: test_report_coverage${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} + + +##################################################################### +# FLAKY + + flaky: + runs-on: ubuntu-22.04 + steps: + + - name: Sync repository + uses: eProsima/eProsima-CI/external/checkout@v0 + with: + path: src + ref: ${{ inputs.ref }} + + - name: Download dependencies and install requirements + uses: ./src/.github/actions/project_dependencies + with: + os: ubuntu-22.04 + cmake_build_type: Release + custom_version_build: ${{ inputs.custom_version_build }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} + secret_token: ${{ secrets.GITHUB_TOKEN }} + + - name: Compile and run tests + id: compile_and_test + uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0 + with: + packages_names: ${{ env.code_packages_names }} + workspace_dependencies: install + cmake_args: -DBUILD_TESTS=ON + ctest_args: --label-regex "xfail" + test_report_artifact: test_report_flaky${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} + + - name: Test Report + uses: eProsima/eProsima-CI/external/test-reporter@v0 + if: success() || failure() + with: + name: "Report: Flaky " + path: "${{ steps.compile_and_test.outputs.ctest_results_path }}*.xml" + working-directory: 'src' + fail-on-empty: 'false' + list-tests: 'failed' + list-suites: 'failed' + +##################################################################### +# UNCRUSTIFY + + uncrustify: + runs-on: ubuntu-22.04 + steps: + + - name: Uncrustify + uses: eProsima/eProsima-CI/ubuntu/uncrustify@v0 + + +##################################################################### +# PYTHON LINTER + + python-linter: + runs-on: ubuntu-22.04 + steps: + + - name: Python Linter + uses: eProsima/eProsima-CI/ubuntu/python_linter@v0 diff --git a/.github/workflows/reusable-windows-ci.yml b/.github/workflows/reusable-windows-ci.yml new file mode 100644 index 0000000..d812aa8 --- /dev/null +++ b/.github/workflows/reusable-windows-ci.yml @@ -0,0 +1,60 @@ +# Reusable workflow to run the following jobs: +# +# - multiplatform-tests +# - [ windows-2022 ] +# - [ Debug | Release ] +# - execute tests in different versions of ubuntu with different build types +# + +name: windows-ci + +on: + + workflow_call: + inputs: + + custom_version_build: + description: > + Version of Fast DDS build from eProsima-CI. + required: true + type: string + + dependencies_artifact_postfix: + description: > + Postfix name to add to artifact name to download dependencies. + This is use to download a specific artifact version from eProsima-CI. + required: true + default: '_nightly' + type: string + + ref: + description: > + The branch or tag name to checkout. + required: true + type: string + default: 'main' + +env: + code_packages_names: 'cmake_utils cpp_utils py_utils' + cpp_packages_names: 'cmake_utils cpp_utils' + py_packages_names: 'py_utils' + +jobs: + +##################################################################### +# TEST + + multiplatform-tests: + name: ${{ matrix.os }}-ci + strategy: + fail-fast: false + matrix: + os: + - windows-2022 + uses: ./.github/workflows/reusable-workflow.yml + with: + os: ${{ matrix.os }} + custom_version_build: ${{ inputs.custom_version_build || 'v3' }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix || '_nightly' }} + ref: ${{ inputs.ref }} + secrets: inherit diff --git a/.github/workflows/reusable-workflow.yml b/.github/workflows/reusable-workflow.yml index 8d2c914..08b18b9 100644 --- a/.github/workflows/reusable-workflow.yml +++ b/.github/workflows/reusable-workflow.yml @@ -1,38 +1,9 @@ # Reusable workflow to run the following jobs: # # - multiplatform-tests -# - [ ubuntu-22.04 | ubuntu-24.04 | windows-2022 ] # - [ Debug | Release ] # - execute tests in different versions of ubuntu with different build types # -# - asan -# - ubuntu-22.04 -# - execute tests with ASAN flag -# -# - tsan -# - ubuntu-22.04 -# - execute tests with TSAN flag -# -# - clang -# - ubuntu-22.04 -# - execute clang-tidy check -# -# - coverage -# - ubuntu-22.04 -# - execute test with coverage flag and upload results -# -# - flaky -# - ubuntu-22.04 -# - execute flaky tests -# -# - uncrustify -# - ubuntu-22.04 -# - test uncrustify -# -# - python-linter -# - ubuntu-22.04 -# - test python linter -# name: reusable-workflow @@ -46,15 +17,14 @@ on: Version of Fast DDS build from eProsima-CI. required: true type: string - default: 'v2' dependencies_artifact_postfix: description: > Postfix name to add to artifact name to download dependencies. This is use to download a specific artifact version from eProsima-CI. required: true - type: string default: '_nightly' + type: string ref: description: > @@ -63,6 +33,11 @@ on: type: string default: 'main' + os: + description: 'Specify runs-on machine to download specific artifact' + required: true + type: string + env: code_packages_names: 'cmake_utils cpp_utils py_utils' cpp_packages_names: 'cmake_utils cpp_utils' @@ -70,22 +45,18 @@ env: jobs: - ##################################################################### # TEST multiplatform-tests: - runs-on: ${{ matrix.os }} + name: ${{ inputs.os }}-ci-${{ matrix.cmake_build_type }} + runs-on: ${{ inputs.os }} strategy: fail-fast: false matrix: cmake_build_type: - Release - Debug - os: - - ubuntu-22.04 - - ubuntu-24.04 - - windows-2022 steps: @@ -96,209 +67,33 @@ jobs: ref: ${{ inputs.ref }} - name: Download dependencies and install requirements - uses: eProsima/dev-utils/.github/actions/project_dependencies@main + uses: ./src/.github/actions/project_dependencies with: - os: ${{ matrix.os }} + os: ${{ inputs.os }} cmake_build_type: ${{ matrix.cmake_build_type }} custom_version_build: ${{ inputs.custom_version_build }} dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} secret_token: ${{ secrets.GITHUB_TOKEN }} - name: Compile and run tests + id: compile_and_test uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0 with: packages_names: ${{ env.code_packages_names }} cmake_args: -DBUILD_TESTS=ON -DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }} - workspace_dependencies: './install' + workspace_dependencies: install ctest_args: --label-exclude "xfail" - colcon_meta_file: ./src/.github/workflows/configurations/${{ runner.os }}/colcon.meta - test_report_artifact: test_report${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }}_${{ matrix.os }}_${{ matrix.cmake_build_type }} - - -##################################################################### -# ASAN + colcon_meta_file: src/.github/workflows/configurations/${{ runner.os }}/colcon.meta + test_report_artifact: test_report${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }}_${{ inputs.os }}_${{ matrix.cmake_build_type }} - asan: - runs-on: ubuntu-22.04 - steps: - - - name: Sync repository - uses: eProsima/eProsima-CI/external/checkout@v0 - with: - path: src - ref: ${{ inputs.ref }} - - - name: Download dependencies and install requirements - uses: eProsima/dev-utils/.github/actions/project_dependencies@main - with: - os: ubuntu-22.04 - cmake_build_type: Release - custom_version_build: ${{ inputs.custom_version_build }} - dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} - secret_token: ${{ secrets.GITHUB_TOKEN }} - - name: Compile and run tests - uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0 + - name: Test Report + uses: eProsima/eProsima-CI/external/test-reporter@v0 + if: success() || failure() with: - packages_names: ${{ env.cpp_packages_names }} - cmake_args: -DBUILD_TESTS=ON -DASAN_BUILD=ON - ctest_args: --label-exclude "xfail|xasan" - workspace_dependencies: './install' - cmake_build_type: Debug - test_report_artifact: test_report_asan${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} - - -##################################################################### -# TSAN - - tsan: - runs-on: ubuntu-22.04 - steps: - - - name: Sync repository - uses: eProsima/eProsima-CI/external/checkout@v0 - with: - path: src - ref: ${{ inputs.ref }} - - - name: Download dependencies and install requirements - uses: eProsima/dev-utils/.github/actions/project_dependencies@main - with: - os: ubuntu-22.04 - cmake_build_type: Release - custom_version_build: ${{ inputs.custom_version_build }} - dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} - secret_token: ${{ secrets.GITHUB_TOKEN }} - - - name: Compile and run tests - uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0 - 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 - with: - packages_names: ${{ env.cpp_packages_names }} - cmake_args: -DBUILD_TESTS=ON -DTSAN_BUILD=ON - ctest_args: --label-exclude "xfail|xtsan" - workspace_dependencies: './install' - cmake_build_type: Debug - test_report_artifact: test_report_tsan${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} - - -##################################################################### -# CLANG - - clang: - runs-on: ubuntu-22.04 - steps: - - - name: Sync repository - uses: eProsima/eProsima-CI/external/checkout@v0 - with: - path: src - ref: ${{ inputs.ref }} - - - name: Download dependencies and install requirements - uses: eProsima/dev-utils/.github/actions/project_dependencies@main - with: - os: ubuntu-22.04 - cmake_build_type: Release - custom_version_build: ${{ inputs.custom_version_build }} - dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} - secret_token: ${{ secrets.GITHUB_TOKEN }} - - - name: Compile and run tests - uses: eProsima/eProsima-CI/multiplatform/clang_build_test@v0 - with: - packages_names: ${{ env.cpp_packages_names }} - workspace_dependencies: './install' - - -##################################################################### -# COVERAGE - - coverage: - runs-on: ubuntu-22.04 - environment: - name: codecov - steps: - - - name: Sync repository - uses: eProsima/eProsima-CI/external/checkout@v0 - with: - path: src - ref: ${{ inputs.ref }} - - - name: Download dependencies and install requirements - uses: eProsima/dev-utils/.github/actions/project_dependencies@main - with: - os: ubuntu-22.04 - cmake_build_type: Release - custom_version_build: ${{ inputs.custom_version_build }} - dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} - secret_token: ${{ secrets.GITHUB_TOKEN }} - - - name: Compile and run tests - uses: eProsima/eProsima-CI/ubuntu/coverage_build_test_upload@v0 - with: - packages_names: ${{ env.cpp_packages_names }} - workspace_dependencies: './install' - test_report_artifact: test_report_coverage${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} - codecov_token: ${{ secrets.CODECOV_TOKEN }} - codecov_fix_file_path: ./src/codecov.yml - - -##################################################################### -# FLAKY - - flaky: - runs-on: ubuntu-22.04 - steps: - - - name: Sync repository - uses: eProsima/eProsima-CI/external/checkout@v0 - with: - path: src - ref: ${{ inputs.ref }} - - - name: Download dependencies and install requirements - uses: eProsima/dev-utils/.github/actions/project_dependencies@main - with: - os: ubuntu-22.04 - cmake_build_type: Release - custom_version_build: ${{ inputs.custom_version_build }} - dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix }} - secret_token: ${{ secrets.GITHUB_TOKEN }} - - - name: Compile and run tests - uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0 - with: - packages_names: ${{ env.code_packages_names }} - cmake_args: -DBUILD_TESTS=ON - cmake_build_type: Release - workspace_dependencies: './install' - ctest_args: --label-regex "xfail" - colcon_meta_file: ./src/.github/workflows/configurations/${{ runner.os }}/colcon.meta - test_report_artifact: test_report_flaky${{ inputs.dependencies_artifact_postfix }}_${{ inputs.custom_version_build }} - -##################################################################### -# UNCRUSTIFY - - uncrustify: - runs-on: ubuntu-22.04 - steps: - - - name: Uncrustify - uses: eProsima/eProsima-CI/ubuntu/uncrustify@v0 - - -##################################################################### -# PYTHON LINTER - - python-linter: - runs-on: ubuntu-22.04 - steps: - - - name: Python Linter - uses: eProsima/eProsima-CI/ubuntu/python_linter@v0 + name: "Report: ${{ inputs.os }} | ${{ matrix.cmake_build_type }} " + path: "${{ steps.compile_and_test.outputs.ctest_results_path }}*.xml" + working-directory: 'src' + path-replace-backslashes: 'true' + list-tests: 'failed' + list-suites: 'failed' diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index af1c583..2c5b8df 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -7,7 +7,8 @@ on: custom_version_build: description: > - Select Fast DDS version build from eProsima-CI. + Use the custom version build from eProsima-CI. + If set to false, the workflow will run the tests for Fast DDS v2 and v3. required: true type: choice default: 'custom' @@ -28,11 +29,20 @@ on: jobs: - reusable_tests: + reusable_tests_ubuntu: name: reusable_tests - uses: ./.github/workflows/reusable-workflow.yml + uses: ./.github/workflows/reusable-ubuntu-ci.yml with: - custom_version_build: ${{ github.event.inputs.custom_version_build || 'v3' }} - dependencies_artifact_postfix: ${{ github.event.inputs.dependencies_artifact_postfix || '_nightly' }} + custom_version_build: ${{ inputs.custom_version_build || 'v3' }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix || '_nightly' }} + ref: ${{ github.ref }} + secrets: inherit + + reusable_tests_windows: + name: reusable_tests + uses: ./.github/workflows/reusable-windows-ci.yml + with: + custom_version_build: ${{ inputs.custom_version_build || 'v3' }} + dependencies_artifact_postfix: ${{ inputs.dependencies_artifact_postfix || '_nightly' }} ref: ${{ github.ref }} secrets: inherit