Skip to content

Continuous Integration #214

Continuous Integration

Continuous Integration #214

Workflow file for this run

name: Continuous Integration
on:
workflow_dispatch:
inputs:
foonathan_memory_vendor_branch:
description: 'foonathan_memory_vendor branch to be used'
required: false
default: 'master'
fastcdr_branch:
description: 'Fast-CDR branch to be used'
required: false
default: 'master'
fastdds_branch:
description: 'Fast-DDS branch to be used'
required: false
default: 'master'
push:
branches:
- 'master'
pull_request:
branches:
- 'master'
jobs:
ubuntu-build-test:
runs-on: ubuntu-latest
strategy:
matrix:
java_version: ['openjdk-11-jdk', 'openjdk-17-jdk', 'openjdk-18-jdk', 'openjdk-19-jdk']
steps:
- uses: actions/checkout@v4
with:
path: src/fastddsgen
- uses: ./src/fastddsgen/.github/actions/install-apt-packages
with:
java-version: ${{ matrix.java_version }}
- uses: ./src/fastddsgen/.github/actions/install-python-packages
- uses: ./src/fastddsgen/.github/actions/fetch-fastddsgen-repos
with:
foonathan-memory-vendor-branch: ${{ github.event.inputs.foonathan_memory_vendor_branch || 'master' }}
fastcdr-branch: ${{ github.event.inputs.fastcdr_branch || 'master' }}
fastdds-branch: ${{ github.event.inputs.fastdds_branch || 'master' }}
- name: Get minimum supported version of CMake
uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.22.6
- name: Use cmake
run: cmake --version
- name: Setup ccache
uses: Chocobo1/setup-ccache-action@v1
- name: Build workspace
run: |
colcon build --event-handlers=console_direct+ --cmake-args -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
- name: Build fastddsgen
run: |
cd src/fastddsgen
./gradlew assemble
- name: Test fastddsgen
run: |
source install/local_setup.bash
cd src/fastddsgen
./gradlew test