Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[21286] Improve CI workflows in master #213

Closed
wants to merge 11 commits into from
Closed

Conversation

JesusPoderoso
Copy link
Contributor

@JesusPoderoso JesusPoderoso commented Jul 1, 2024

Description

This PR improves the CI workflows, making them as similar as possible to the Fast DDS workflows.
It also introduces a braching model refactor, similiar as the performed in Fast DDS repository.

It is on top of (and must be merged after) this PR:

Note: While backporting this PR, please ensure the following changes:

  • Remove nightly jobs
  • Update ubuntu-ci.yml, mac-ci.yml and windows-ci.yml files with the proper fallback branches
  • Maintain reduced version of the RELEASE_SUPPORT.md (only reference to master links)
  • Create mirror job on 1.1.x brach (targetting 1.x)
  • Fast CDR 1.0.x requires building on ubuntu-20.04

@Mergifyio backport 2.2.x 2.1.x 1.1.x 1.0.x

Contributor Checklist

  • Commit messages follow the project guidelines.
  • N/A The code follows the style guidelines of this project.
  • N/A Tests that thoroughly check the new feature have been added/Regression tests checking the bug and its fix have been added; the added tests pass locally
  • N/A Any new/modified methods have been properly documented using Doxygen.
  • N/A Changes are backport compatible: they do NOT break ABI nor change library core behavior.
  • N/A Changes are API compatible.
  • N/A New feature has been added to the versions.md file (if applicable).
  • Applicable backports have been included in the description.

Reviewer Checklist

  • The PR has a milestone assigned.
  • The title and description correctly express the PR's purpose.
  • Check contributor checklist is correct.
  • Check CI results: changes do not issue any warning.
  • Check CI results: CI pass and failing tests are unrelated with the changes.

@JesusPoderoso JesusPoderoso added this to the v3.0.0 milestone Jul 1, 2024
@JesusPoderoso JesusPoderoso self-assigned this Jul 1, 2024
@JesusPoderoso JesusPoderoso requested review from richiprosima and removed request for richiprosima July 1, 2024 12:19
@JesusPoderoso JesusPoderoso requested review from richiprosima and removed request for richiprosima July 1, 2024 12:22
@JesusPoderoso JesusPoderoso modified the milestones: v3.0.0, v2.2.3 Jul 8, 2024
@richiprosima
Copy link
Contributor

Build status:

  • Linux Build Status
  • Mac Build Status
  • Windows Build Status

Base automatically changed from feature/pr_template to master July 9, 2024 08:28
shell: bash

jobs:
reusable-ubuntu-ci:
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
reusable-ubuntu-ci:
fastcdr_test:

Comment on lines 75 to 78
- name: Sync eProsima/Fast-CDR repository
uses: eProsima/eProsima-CI/external/checkout@v0
with:
path: src/fastcdr
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- name: Sync eProsima/Fast-CDR repository
uses: eProsima/eProsima-CI/external/checkout@v0
with:
path: src/fastcdr

Comment on lines 143 to 151
- name: Fast CDR Test Report
uses: eProsima/eProsima-CI/external/test-reporter@v0
if: ${{ !cancelled() && inputs.run-tests == true}}
with:
name: "Report: ${{ inputs.label }}"
path: "${{ steps.test_fastcdr.outputs.ctest_results_path }}*.xml"
working-directory: 'src/fastcdr'
path-replace-backslashes: 'true'
list-tests: 'failed'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- name: Fast CDR Test Report
uses: eProsima/eProsima-CI/external/test-reporter@v0
if: ${{ !cancelled() && inputs.run-tests == true}}
with:
name: "Report: ${{ inputs.label }}"
path: "${{ steps.test_fastcdr.outputs.ctest_results_path }}*.xml"
working-directory: 'src/fastcdr'
path-replace-backslashes: 'true'
list-tests: 'failed'

uses: eProsima/eProsima-CI/multiplatform/colcon_test@v0
with:
colcon_meta_file: ${{ github.workspace }}/src/fastcdr/.github/workflows/config/build.meta ${{ github.workspace }}/src/fastcdr/.github/workflows/config/test.meta
colcon_test_args_default: --event-handlers=console_direct+ --return-code-on-test-failure
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
colcon_test_args_default: --event-handlers=console_direct+ --return-code-on-test-failure
colcon_test_args_default: --event-handlers=console_direct+

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can make do with only one "multiplatform" reusable. The only thing missing is the toolset, but I think we could have it as an opt-in arg that only takes effect on windows

# Release support


Please, refer to the [main branch](https://github.com/eProsima/Fast-CDR/blob/master/RELEASE_SUPPORT.md) for the latest version of this document.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Please, refer to the [main branch](https://github.com/eProsima/Fast-CDR/blob/master/RELEASE_SUPPORT.md) for the latest version of this document.
Please, refer to the [master branch](https://github.com/eProsima/Fast-CDR/blob/master/RELEASE_SUPPORT.md) for the latest version of this document.


## *eProsima Fast DDS* and *Fast CDR* version compatibility

|Fast DDS Version|Fast DDS Python Version|Fast DDS Python Version branch|Fast DDS Python Latest Release|
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
|Fast DDS Version|Fast DDS Python Version|Fast DDS Python Version branch|Fast DDS Python Latest Release|
|Fast DDS Version|Fast CDR Version|Fast CDR Version branch|Fast CDR Latest Release|

@richiprosima
Copy link
Contributor

Build status:

  • Linux Build Status
  • Mac Build Status
  • Windows Build Status

@richiprosima
Copy link
Contributor

Build status:

  • Linux Build Status
  • Mac Build Status
  • Windows Build Status

@richiprosima
Copy link
Contributor

Build status:

  • Linux Build Status
  • Mac Build Status
  • Windows Build Status

@EduPonz EduPonz marked this pull request as draft July 11, 2024 09:48
@EduPonz EduPonz marked this pull request as ready for review July 11, 2024 09:48
@JesusPoderoso JesusPoderoso reopened this Jul 11, 2024
@JesusPoderoso JesusPoderoso deleted the feature/21286 branch July 11, 2024 10:15
@JesusPoderoso JesusPoderoso restored the feature/21286 branch July 11, 2024 10:15
@JesusPoderoso
Copy link
Contributor Author

Closed in favor of:

@richiprosima
Copy link
Contributor

Build status:

  • Linux Build Status
  • Mac Build Status
  • Windows Build Status

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants