[20694] Build Fast DDS Python bindings in Fast DDS Docs Github CI job (backport #4628) #3088
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: Documentation build and test | |
on: | |
workflow_dispatch: | |
inputs: | |
fastdds_docs_branch: | |
description: 'Fast DDS Docs branch' | |
required: true | |
type: string | |
fastdds_python_branch: | |
description: 'Fast DDS Python branch' | |
required: true | |
type: string | |
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-build-and-test-documentation: | |
name: Documentation build and test | |
if: ${{ ( | |
!contains(github.event.pull_request.labels.*.name, 'skip-ci') && | |
!contains(github.event.pull_request.labels.*.name, 'conflicts') | |
) }} | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Add ci-pending label if PR | |
if: ${{ github.event_name == 'pull_request' }} | |
uses: eProsima/eProsima-CI/external/add_labels@v0 | |
with: | |
labels: ci-pending | |
number: ${{ github.event.number }} | |
repo: eProsima/Fast-DDS | |
- name: Sync eProsima/Fast-DDS repository | |
uses: eProsima/eProsima-CI/external/checkout@v0 | |
with: | |
path: src/fastrtps | |
submodules: true | |
- name: Get minimum supported version of CMake | |
uses: eProsima/eProsima-CI/external/get-cmake@v0 | |
with: | |
cmakeVersion: '3.22.6' | |
- name: Setup CCache | |
uses: eProsima/eProsima-CI/external/setup-ccache-action@v0 | |
- name: Install apt dependencies | |
uses: eProsima/eProsima-CI/ubuntu/install_apt_packages@v0 | |
with: | |
packages: curl grep wget libssl-dev doxygen imagemagick plantuml | |
update: false | |
upgrade: false | |
- name: Install Python dependencies | |
uses: eProsima/eProsima-CI/multiplatform/install_python_packages@v0 | |
with: | |
packages: vcstool | |
upgrade: false | |
- name: Install colcon | |
uses: eProsima/eProsima-CI/ubuntu/install_colcon@v0 | |
- name: Download Fast DDS .repos | |
uses: eProsima/eProsima-CI/ubuntu/vcs_import@v0 | |
with: | |
vcs_repos_file: ./src/fastrtps/fastrtps.repos | |
destination_workspace: src | |
skip_existing: 'true' | |
- name: Fetch Fast DDS CI dependencies | |
uses: eProsima/eProsima-CI/multiplatform/vcs_import@v0 | |
with: | |
vcs_repos_file: ${{ github.workspace }}/src/fastrtps/.github/workflows/config/ci.repos | |
destination_workspace: src | |
skip_existing: 'true' | |
- name: Get Fast DDS Python branch | |
id: get_fastdds_python_branch | |
uses: eProsima/eProsima-CI/ubuntu/get_related_branch_from_repo@v0 | |
with: | |
remote_repository: eProsima/Fast-DDS-python | |
fallback_branch: ${{ inputs.fastdds_python_branch || '1.0.x' }} | |
- name: Download Fast DDS Python repo | |
uses: eProsima/eProsima-CI/external/checkout@v0 | |
with: | |
repository: eProsima/Fast-DDS-python | |
path: src/fastdds-python | |
ref: ${{ steps.get_fastdds_python_branch.outputs.deduced_branch }} | |
- name: Get Fast DDS Docs branch | |
id: get_fastdds_docs_branch | |
uses: eProsima/eProsima-CI/ubuntu/get_related_branch_from_repo@v0 | |
with: | |
remote_repository: eProsima/Fast-DDS-docs | |
fallback_branch: ${{ inputs.fastdds_docs_branch || '2.6.x' }} | |
- name: Download Fast DDS documentation repo | |
uses: eProsima/eProsima-CI/external/checkout@v0 | |
with: | |
repository: eProsima/Fast-DDS-docs | |
path: src/fastdds-docs | |
ref: ${{ steps.get_fastdds_docs_branch.outputs.deduced_branch }} | |
- name: Install Fast DDS Docs required python packages | |
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0 | |
with: | |
upgrade: false | |
requirements_file_name: src/fastdds-docs/docs/requirements.txt | |
- name: Colcon build | |
continue-on-error: false | |
uses: eProsima/eProsima-CI/multiplatform/colcon_build@v0 | |
with: | |
colcon_meta_file: './src/fastrtps/.github/workflows/config/documentation.meta' | |
colcon_build_args: '' | |
colcon_build_args_default: '' | |
cmake_args: '' | |
cmake_args_default: '' | |
cmake_build_type: Release | |
workspace: ${{ github.workspace }} | |
workspace_dependencies: '' | |
- name: Colcon test | |
id: test | |
if: ${{ !contains(github.event.pull_request.labels.*.name, 'no-test') }} | |
uses: eProsima/eProsima-CI/multiplatform/colcon_test@v0 | |
with: | |
colcon_test_args: '' | |
colcon_test_args_default: --event-handlers=console_direct+ | |
ctest_args: '' | |
ctest_args_default: '' | |
packages_names: fastdds-docs | |
workspace: ${{ github.workspace }} | |
workspace_dependencies: '' | |
test_report_artifact: ${{ format('test_report_{0}', github.job, join(matrix.*, '_')) }} | |
- name: Test summary | |
uses: eProsima/eProsima-CI/multiplatform/junit_summary@v0 | |
if: ${{ !cancelled() && !contains(github.event.pull_request.labels.*.name, 'no-test') }} | |
with: | |
junit_reports_dir: "${{ steps.test.outputs.ctest_results_path }}" | |
print_summary: 'True' | |
show_failed: 'True' | |
show_disabled: 'False' | |
show_skipped: 'False' |