Skip to content

Commit

Permalink
Build Fast DDS Python bindings in Fast DDS Docs Github CI job (#4628) (
Browse files Browse the repository at this point in the history
…#4642)

* Refs #20694: Use ci.repos to get gtest

Signed-off-by: EduPonz <eduardoponz@eprosima.com>

* Refs #20694: Use eProsima-CI to choose Fast DDS Docs branch

Signed-off-by: EduPonz <eduardoponz@eprosima.com>

* Refs #20694: Use eProsima-CI to choose Fast DDS Python branch

Signed-off-by: EduPonz <eduardoponz@eprosima.com>

* Refs #20694: Get deduced branch output correctly

Signed-off-by: EduPonz <eduardoponz@eprosima.com>

* Refs #20694: Use CMake 3.22.6

Signed-off-by: EduPonz <eduardoponz@eprosima.com>

* Refs #20694: Pin get_related_branch_from_repo action version to v0

Signed-off-by: EduPonz <eduardoponz@eprosima.com>

---------

Signed-off-by: EduPonz <eduardoponz@eprosima.com>
(cherry picked from commit decf689)

Co-authored-by: Eduardo Ponz Segrelles <eduardoponz@eprosima.com>
  • Loading branch information
mergify[bot] and EduPonz authored Apr 17, 2024
1 parent 5253a84 commit 8ce86b9
Showing 1 changed file with 37 additions and 65 deletions.
102 changes: 37 additions & 65 deletions .github/workflows/documentation-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,14 @@ name: Documentation build and test
on:
workflow_dispatch:
inputs:
documentation_branch:
description: 'Documentation branch name'
fastdds_docs_branch:
description: 'Fast DDS Docs branch'
required: true
type: string
fastdds_python_branch:
description: 'Fast DDS Python branch'
required: true
type: string
default: '2.13.x'

pull_request:
types:
Expand All @@ -20,9 +23,6 @@ concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
ACTION_BRANCH_NAME: ${{ github.ref }}

jobs:
ubuntu-build-and-test-documentation:
name: Documentation build and test
Expand Down Expand Up @@ -50,7 +50,7 @@ jobs:
- name: Get minimum supported version of CMake
uses: eProsima/eProsima-CI/external/get-cmake@v0
with:
cmakeVersion: '3.20.6'
cmakeVersion: '3.22.6'

- name: Setup CCache
uses: eProsima/eProsima-CI/external/setup-ccache-action@v0
Expand All @@ -62,12 +62,6 @@ jobs:
update: false
upgrade: false

- name: Install GTest
uses: eProsima/eProsima-CI/multiplatform/install_gtest@v0
with:
cmake_build_type: Release
version: release-1.11.0

- name: Install Python dependencies
uses: eProsima/eProsima-CI/multiplatform/install_python_packages@v0
with:
Expand All @@ -84,62 +78,40 @@ jobs:
destination_workspace: src
skip_existing: 'true'

- name: Determine the Fast DDS Documentation branch to be used
run: |
if [[ ${{ github.event_name }} == "push" ]]
then
echo "ACTION_BRANCH_NAME=${{ github.ref }}" >> $GITHUB_ENV
echo "Push event: using pushed branch '${{ github.ref }}' for docs repository"
elif [[ ${{ github.event_name }} == "workflow_dispatch" ]]
then
echo "ACTION_BRANCH_NAME=${{ inputs.documentation_branch }}" >> $GITHUB_ENV
echo "Workflow dispatch event: using input branch '${{ inputs.documentation_branch }}' for docs repository"
elif [[ ${{ github.event_name }} == "pull_request" ]]
then
DOCS_REPO=https://github.com/eProsima/fast-dds-docs.git
# Attempt to use PR's source branch
TEMP_BRANCH=${{ github.head_ref }}
RESPONSE_CODE=$(git ls-remote --heads $DOCS_REPO $TEMP_BRANCH | wc -l)
if [[ ${RESPONSE_CODE} == "0" ]]
then
echo "PR source branch '$TEMP_BRANCH' branch DOES NOT exist in $DOCS_REPO"
# Attempt to use PR's base branch
TEMP_BRANCH=${{ github.base_ref }}
RESPONSE_CODE=$(git ls-remote --heads $DOCS_REPO $TEMP_BRANCH | wc -l)
if [[ ${RESPONSE_CODE} == "0" ]]
then
echo "PR base branch '$TEMP_BRANCH' branch DOES NOT exist in $DOCS_REPO"
# Attempt to use version's branch, which will most likely be the base anyways.
# This is just in case the PR was to an intermediate branch
TEMP_BRANCH=2.13.x
RESPONSE_CODE=$(git ls-remote --heads $DOCS_REPO $TEMP_BRANCH | wc -l)
if [[ ${RESPONSE_CODE} == "0" ]]
then
# There are no more fallbacks, so we need to fail here
echo "Version branch '$TEMP_BRANCH' branch DOES NOT exist in $DOCS_REPO"
exit 1
fi
fi
fi
echo "ACTION_BRANCH_NAME=$TEMP_BRANCH" >> $GITHUB_ENV
echo "PR event: using deduced branch '$TEMP_BRANCH' for docs repository"
fi
- name: Download FastDDS documentation repo
- 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.4.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.13.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: ${{ env.ACTION_BRANCH_NAME }}
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
Expand Down

0 comments on commit 8ce86b9

Please sign in to comment.