Skip to content

[22337] Fix windows default version and vs-toolset default input #62

[22337] Fix windows default version and vs-toolset default input

[22337] Fix windows default version and vs-toolset default input #62

Workflow file for this run

name: Fast CDR Windows CI
on:
workflow_dispatch:
inputs:
os-version:
description: 'OS version to run the workflow'
required: false
default: 'windows-2019'
type: string
vs-toolset:
description: 'Visual Studio toolset to use (Default: v141 and v142)'
required: false
default: ''
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
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:
windows-ci:
strategy:
fail-fast: false
matrix:
vs-toolset:
- 'v141'
- 'v142'
if: ${{ !(github.event_name == 'pull_request') || !contains(github.event.pull_request.labels.*.name, 'conflicts') }}
uses: ./.github/workflows/reusable-ci.yml
with:
# It would be desirable to have a matrix of windows 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 || 'windows-2019' }}
vs-toolset: ${{ inputs.vs-toolset || matrix.vs-toolset }}
label: ${{ format('windows-{0}-ci-{1}', matrix.vs-toolset, inputs.fastcdr-branch || github.ref) }}
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'))) }}