Closed jcheca closed 1 year ago
That's odd because the build you are describing actually works in the ci I can only provide two advices:
Thanks Miguel for you replay. I will do step by step but in then workflow i can see conditional for the os "ubuntu-20.04" but not for "ubuntu 22.04", is it ok if i Change it ?
Thanks again.
It is ok. Basically humble is the only distro that runs in ubuntu 22.04 (its goal OS) and ROS1 lacks support for it. The conditionals plainly disable all ROS1 features for humble.
Thanks again for all your help. I only get to deploy via github-runner in ubuntu-22.04 Galactic Distribution of the 3 matrix.node, I have deleted in my fork matrix.node to only deploy humble and this is my logs https://github.com/jcheca/Integration-Service/actions/runs/5031799783/jobs/9025096313.
Thanks in advance.
Something odd happened in the runner you report. CMake says it cannot identify the compiler. In fact, the scheduled job on your main branch was built flawlessly yesterday https://github.com/jcheca/Integration-Service/actions/runs/5035067330/jobs/9030316127 though the job fail because a flaky test on ROS2-SH (this one only fails on humble from time to time, but we cannot reproduce it locally).
I have to install "build-essential" to solve compiler problem, but now i have the nex issue https://github.com/jcheca/Integration-Service/actions/runs/5042372111/jobs/9042940679 Thank you very much for taking care of all the work that I am generating 👍
Again I think is an issue with the runner. Python is not locating empy which for sure is installed with the ros2 & colon dependencies. My educated guess: is a networking issue: sometimes apt fails, sometime pip. Github actions free workflow approach is flooding the package managers in traffic. That would explain why the nightlies are passing, by definition they are run when the network traffic is low. 🤷♂️
Yes, "empy" I have managed to install it manually to try to solve the problem. Well, I'll try it at other times of the day to see if I have any luck. Thank you.
We have reviewed your workflow and you are building ros humble on ubuntu focal instead of jammy. That may surely lead to build issues because humble expects the jammy apt packages. Nevertheless, something is odd with the runner because despite your ci.yml config your former jobs work on jammy instead of focal as expected.
But my ubuntu is (jammy)
DISTRIB_ID=Ubuntu DISTRIB_RELEASE=22.04 DISTRIB_CODENAME=jammy DISTRIB_DESCRIPTION="Ubuntu 22.04.2 LTS" PRETTY_NAME="Ubuntu 22.04.2 LTS" NAME="Ubuntu" VERSION_ID="22.04" VERSION="22.04.2 LTS (Jammy Jellyfish)" VERSION_CODENAME=jammy ID=ubuntu ID_LIKE=debian HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" UBUNTU_CODENAME=jammy
https://github.com/jcheca/Integration-Service/actions/runs/5044434860/jobs/9047479575, I'm not going to interrupt anymore, but when it can compile it stays in the same error already described in the beginning of this thread. Cannot generate package is-ros2-mix-generator.
Thxs.
Again something is wrong with the runner. It complains that rosidl_adapter is missing but in the faulty step it is located:
-- Found rosidl_adapter: 3.1.4 (/opt/ros/humble/share/rosidl_adapter/cmake)
You can introduce an extra step to check it can be reached:
. /opt/ros/${{ matrix.node }}/setup.sh
python3 -m rosidl_adapter --help
Yes, it could be reached (https://github.com/jcheca/Integration-Service/actions/runs/5056218869/jobs/9073406481), but no pass "Build under ROS2 overlay".
Summary: 8 packages finished [8min 45s]
1 package failed: is-ros2-mix-generator 1 package aborted: is-websocket 8 packages had stderr output: is-core is-examples is-json-xtypes is-mock is-ros2 is-ros2-mix-generator is-websocket xtypes
That's the mystery. I've been launching similar workflows this morning without finding this issue. See here the branch comparison. It's unexplainable to me.
Finally, we found an explanation ... you are using a github self-hosted runner which is tagged as the ubuntu-22.04 github runner. The only advice we can provide is to compare your runner config with the github runner one and identify any missing python dependency or version issue.
Is understood this is not an Integration Service issue but a runner setup one.
I would like to test FIWARE integration with ROS2, so I have installed ROS2 (humble) in my Ubuntu 22.04.02 fresh intallation and then eProsima Integration-Service with only just two system handle (ROS2 and FIWARE); I have installed all dependencies but when i build with NOFLAGs i have these error:
`Starting >>> xtypes Starting >>> is-examples [1.441s] WARNING:colcon.colcon_cmake.task.cmake.build:Could not run installation step for package 'is-examples' because it has no 'install' target Finished <<< is-examples [0.16s] Finished <<< xtypes [0.28s] Starting >>> is-core Finished <<< is-core [0.41s] Starting >>> is-mock Starting >>> is-json-xtypes Finished <<< is-mock [0.26s] Starting >>> is-ros2 Finished <<< is-json-xtypes [0.38s] Starting >>> is-fiware Finished <<< is-ros2 [0.29s] Starting >>> is-ros2-mix-generator Finished <<< is-fiware [0.36s] --- stderr: is-ros2-mix-generator CMake Error at /home/usuario/is-workspace/install/is-core/lib/cmake/is-core/cmake/is_mix_generator.cmake:596 (message): Critical failure when trying to generate ros2 source files for std_msgs:
Unable to import rosidl_adapter. Please source a ROS2 installation first. Call Stack (most recent call first): /home/usuario/is-workspace/install/is-core/lib/cmake/is-core/cmake/is_mix_generator.cmake:341 (_is_mix_generate_source_files) /home/usuario/is-workspace/install/is-core/lib/cmake/is-core/cmake/is_mix_generator.cmake:260 (_is_configure_mix_package) cmake/is_ros2_rosidl_mix.cmake:69 (is_mix_generator) CMakeLists.txt:91 (is_ros2_rosidl_mix)
Failed <<< is-ros2-mix-generator [1.49s, exited with code 1]
Summary: 7 packages finished [3.42s] 1 package failed: is-ros2-mix-generator 1 package had stderr output: is-ros2-mix-generator ` I just only think that the only difference with documentation is ROS2 distribution (humble); in documentation describe ROS2 (foxy/Galactic) in Ubuntu 20.04
I would like to know is it is possible to build/run eProsima Integration Service in Ubuntu 22.04 with ROS2 (humble)
Thanks in advance.