-
Notifications
You must be signed in to change notification settings - Fork 38
updates project to work with zephyr v4.0.x #146
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
Conversation
|
Hello would you mind updating both workflows to make this compatible with your PR? |
|
Absolutely- I'll try to have these changes done in the next 24 hours. |
|
I have added an attempt to update the workflows. I was testing locally using 'act', but I was having some difficulty getting the checkout to match the 'ref'. Instead, it appeared that the microROS-zephyr-module repo in the 'act' execution environment always matched whatever was currently checked out locally. I'll have to examine the docs a bit more. Additionally, I also could not get any workflows to automatically appear in the 'Actions' pane on the Github page of my fork of the project. Are the workflows auto-populated somehow or do I need to perform some manual setup? Thanks! |
|
CI running, it seems that I need to approve the execution |
|
Next attempt to fix the workflows. As for the issues I previously ran into: I was surprised the previous ci.yml change didn't build correctly. My local execution runs were successful. Nevertheless, I have made some adjustments to hopefully get the SDK detected correctly. |
pablogs9
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some comments
.github/workflows/ci.yml
Outdated
| pull_request: | ||
| branches: | ||
| - '**' | ||
| branches-ignore: ["iron", "rolling", "humble"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please do not ignore PR to active branches
.github/workflows/nightly.yml
Outdated
| - uses: actions/checkout@v4 | ||
| with: | ||
| path: micro_ros_zephyr_module | ||
| branch: ${{ matrix.branch }} | ||
| ref: jazzy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nightly is not running all ROS 2 distros as in previous approach
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @pablogs9. Thanks for the feedback.
Currently, I have split the GitHub actions into the following configurations:
-
The iron/rolling/humble coverage was moved into GitHub actions called "legacy_ci.yml" and "legacy_nightly.yml". These "legacy" actions test the iron/rolling/humble branches against Zephyr versions v3.1.0 and v2.7.2, using the Zephyr docker image based on SDK 0.14.2. [This matches the configuration currently in use by this microROS Zephyr project.]
-
The jazzy coverage is in "ci.yml" and "nightly.yml". These actions are running with Zephyr version v4.0.99, using the Zephyr docker image based on SDK 0.16.9-rc3.
Is it imperative that the older ROS 2 distros run on the newer Zephyr setup?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @Z0rdon,
Humble is an active distro until May 2027 and Rolling is "newer" than Jazzy.
I'm okay with getting rid of Iron since it is EOL.
Concerning the CI, ideally, we need to have a single workflow that tests the module for all active distros.
|
Hello @pablogs9. Here is my next workflow adjustment attempt. I believe all of the active ROS2 distros are now part of a single workflow, as you requested. Right now the relevant commits that enable updating the zephyr version are only on the 'jazzy' branch, so the CI will likely only work for this branch until the relevant changes are applied to the other branches. |
|
Hey @Z0rdon, CI looks good, we are going to do a quick test and will merge ASAP. Thanks for the contribution. |
Signed-off-by: Antón Casas <antoncasas@eprosima.com>
…r image Signed-off-by: Antón Casas <antoncasas@eprosima.com>
Signed-off-by: Antón Casas <antoncasas@eprosima.com>
Signed-off-by: Antón Casas <antoncasas@eprosima.com>
|
@mergify backport humble rolling |
✅ Backports have been createdDetails
|
* updates project to work with zephyr v4.0.x * updating workflows for zephyr v4.0.x * adds cmake prefix path, changes to ci image * adds manual trigger to ci workflows * updates CI workflows for all active ROS2 distros * Get uart device with Zephyr 4's Devicetree-centric approach Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Tested in v4.1.0 using manual installation on Ubuntu:24.04 base Docker image Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Add v4.1.0 to CI and nightly Signed-off-by: Antón Casas <antoncasas@eprosima.com> * State SDK used in CI. Restore Z0rdon's info about docker image used. Signed-off-by: Antón Casas <antoncasas@eprosima.com> --------- Signed-off-by: Antón Casas <antoncasas@eprosima.com> Co-authored-by: Antón Casas <antoncasas@eprosima.com> (cherry picked from commit 7cbe6da) # Conflicts: # .github/workflows/nightly.yml # modules/libmicroros/microros_transports/serial/microros_transports.c
* updates project to work with zephyr v4.0.x * updating workflows for zephyr v4.0.x * adds cmake prefix path, changes to ci image * adds manual trigger to ci workflows * updates CI workflows for all active ROS2 distros * Get uart device with Zephyr 4's Devicetree-centric approach Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Tested in v4.1.0 using manual installation on Ubuntu:24.04 base Docker image Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Add v4.1.0 to CI and nightly Signed-off-by: Antón Casas <antoncasas@eprosima.com> * State SDK used in CI. Restore Z0rdon's info about docker image used. Signed-off-by: Antón Casas <antoncasas@eprosima.com> --------- Signed-off-by: Antón Casas <antoncasas@eprosima.com> Co-authored-by: Antón Casas <antoncasas@eprosima.com> (cherry picked from commit 7cbe6da) # Conflicts: # .github/workflows/nightly.yml
* updates project to work with zephyr v4.0.x (#146) * updates project to work with zephyr v4.0.x * updating workflows for zephyr v4.0.x * adds cmake prefix path, changes to ci image * adds manual trigger to ci workflows * updates CI workflows for all active ROS2 distros * Get uart device with Zephyr 4's Devicetree-centric approach Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Tested in v4.1.0 using manual installation on Ubuntu:24.04 base Docker image Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Add v4.1.0 to CI and nightly Signed-off-by: Antón Casas <antoncasas@eprosima.com> * State SDK used in CI. Restore Z0rdon's info about docker image used. Signed-off-by: Antón Casas <antoncasas@eprosima.com> --------- Signed-off-by: Antón Casas <antoncasas@eprosima.com> Co-authored-by: Antón Casas <antoncasas@eprosima.com> (cherry picked from commit 7cbe6da) # Conflicts: # .github/workflows/nightly.yml * Solve merge conflicts Signed-off-by: Antón Casas <antoncasas@eprosima.com> * colcon ignore rmw_security_common Signed-off-by: Antón Casas <antoncasas@eprosima.com> --------- Signed-off-by: Antón Casas <antoncasas@eprosima.com> Co-authored-by: Zordon <101883124+Z0rdon@users.noreply.github.com> Co-authored-by: Antón Casas <antoncasas@eprosima.com>
* updates project to work with zephyr v4.0.x (#146) * updates project to work with zephyr v4.0.x * updating workflows for zephyr v4.0.x * adds cmake prefix path, changes to ci image * adds manual trigger to ci workflows * updates CI workflows for all active ROS2 distros * Get uart device with Zephyr 4's Devicetree-centric approach Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Tested in v4.1.0 using manual installation on Ubuntu:24.04 base Docker image Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Add v4.1.0 to CI and nightly Signed-off-by: Antón Casas <antoncasas@eprosima.com> * State SDK used in CI. Restore Z0rdon's info about docker image used. Signed-off-by: Antón Casas <antoncasas@eprosima.com> --------- Signed-off-by: Antón Casas <antoncasas@eprosima.com> Co-authored-by: Antón Casas <antoncasas@eprosima.com> (cherry picked from commit 7cbe6da) # Conflicts: # .github/workflows/nightly.yml # modules/libmicroros/microros_transports/serial/microros_transports.c * Solve merge conflicts Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Harmonize device config with other branches Revert "boards: move board specific configurations (#63)" This reverts commit 7e07006. Signed-off-by: Antón Casas <antoncasas@eprosima.com> * Update ci.yml and nightly.yml Signed-off-by: Antón Casas <antoncasas@eprosima.com> --------- Signed-off-by: Antón Casas <antoncasas@eprosima.com> Co-authored-by: Zordon <101883124+Z0rdon@users.noreply.github.com> Co-authored-by: Antón Casas <antoncasas@eprosima.com>
Upticks the compatible zephyr version.
The 'zephyr_library_import' needed to be replaced with 'zephyr_link_libraries' to avoid the 'whole-archive' linking behavior (which would consume massive amounts of RAM).
Other miscellaneous fixes were made in order to build.