[21286] Improve CI workflows in master #6
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Fast CDR Ubuntu CI | |
on: | |
workflow_dispatch: | |
inputs: | |
os-version: | |
description: 'OS version to run the workflow' | |
required: false | |
default: 'ubuntu-22.04' | |
type: string | |
colcon-args: | |
description: 'Extra arguments for colcon cli' | |
required: false | |
type: string | |
cmake-args: | |
description: 'Extra arguments for cmake cli' | |
required: false | |
type: string | |
ctest-args: | |
description: 'Extra arguments for ctest cli' | |
required: false | |
type: string | |
fastcdr-branch: | |
description: 'Branch or tag of Fast CDR repository' | |
type: string | |
required: true | |
run-tests: | |
description: 'Run test suite of Fast CDR' | |
required: false | |
type: boolean | |
default: true | |
use-ccache: | |
description: 'Use CCache to speed up the build' | |
required: false | |
type: boolean | |
default: false | |
pull_request: | |
types: | |
- review_requested | |
paths-ignore: | |
- '**.md' | |
- '**.txt' | |
- '!**/CMakeLists.txt' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
ubuntu-ci: | |
if: ${{ !(github.event_name == 'pull_request') || !contains(github.event.pull_request.labels.*.name, 'conflicts') }} | |
uses: ./.github/workflows/reusable-ubuntu-ci.yml | |
with: | |
# It would be desirable to have a matrix of ubuntu OS for this job, but due to the issue opened in this ticket: | |
# https://github.com/orgs/community/discussions/128118 , it has been set as a single OS job. | |
os-version: ${{ inputs.os-version || 'ubuntu-22.04' }} | |
label: 'ubuntu-ci-${{ inputs.fastcdr-branch }}' | |
colcon-args: ${{ inputs.colcon-args }} | |
cmake-args: ${{ inputs.cmake-args }} | |
ctest-args: ${{ inputs.ctest-args }} | |
fastcdr-branch: ${{ inputs.fastcdr-branch || github.ref }} | |
run-build: ${{ !(github.event_name == 'pull_request') || !contains(github.event.pull_request.labels.*.name, 'skip-ci') }} | |
run-tests: ${{ (inputs.run-tests == true) || ((github.event_name == 'pull_request') && (!contains(github.event.pull_request.labels.*.name, 'no-test'))) }} | |
use-ccache: ${{ inputs.use-ccache || false }} |