Closed orensbruli closed 1 year ago
graph TD
Rbin_uJ64__rmf_demos --> Rbin_uJ64__rmf_demos_fleet_adapter
Rbin_uJ64__rmf_demos_fleet_adapter --> Rbin_uJ64__rmf_fleet_adapter
Rbin_uJ64__rmf_fleet_adapter --> Rbin_uJ64__rmf_task_sequence
Rbin_uJ64__rmf_task_sequence --> FAIL
Rbin_uJ64__rmf_demos_gz --> Rbin_uJ64__rmf_demos
Rbin_uJ64__rmf_demos_gz_classic --> Rbin_uJ64__rmf_demos
Rbin_uJ64__rmf_fleet_adapter_python --> Rbin_uJ64__rmf_fleet_adapter
click FAIL href "https://build.ros2.org/job/Rbin_uJ64__rmf_task_sequence__ubuntu_jammy_amd64__binary/155/"
graph TD
Hbin_uJ64__rmf_fleet_adapter_python --> Hbin_uJ64__rmf_fleet_adapter
Hbin_uJ64__rmf_fleet_adapter --> Hbin_uJ64__rmf_traffic_ros2
Hbin_uJ64__rmf_traffic_ros2 --> FAIL
Hbin_uJ64__nlohmann_json_schema_validator_vendor --> FAIL2
Rbin_uJ64__rmf_demos --> Hsrc_uJ__rmf_demos_assets
Hsrc_uJ__rmf_demos_assets --> FAIL3
Hbin_uJ64__rmf_demos_bridges --> Hsrc_uJ__rmf_demos_bridges
Hsrc_uJ__rmf_demos_bridges --> FAIL4
click FAIL1 href "https://build.ros2.org/job/Hbin_uJ64__rmf_traffic_ros2__ubuntu_jammy_amd64__binary/184/console"
click FAIL2 href "https://build.ros2.org/job/Hbin_uJ64__nlohmann_json_schema_validator_vendor__ubuntu_jammy_amd64__binary/8/console"
click FAIL3 href "https://build.ros2.org/job/Hsrc_uJ__rmf_demos_assets__ubuntu_jammy__source/12/console"
click FAIL4 href "https://build.ros2.org/job/Hsrc_uJ__rmf_demos_bridges__ubuntu_jammy__source/11/console"
Trying to reproduce locally (docker run -it ros:rolling bash
)
apt update; rosdep update; apt install -y vim wget
echo "insert repo url"
read repo
git clone $repo -b rolling
cd $(echo $repo | rev | cut -d'/' -f1 | rev | cut -d'.' -f1)
wget http://packages.ros.org/ros2-testing/ubuntu/pool/main/r/ros-rolling-nlohmann-json-schema-validator-vendor/ros-rolling-nlohmann-json-schema-validator-vendor_0.2.1-1jammy.20221010.085729_amd64.deb
apt install nlohmann-json3-dev
Manually applied these changes: https://github.com/open-rmf/rmf_task/pull/71
dpkg -i ros-rolling-nlohmann-json-schema-validator-vendor*
rosdep install -y --from-paths . --ignore-src --rosdistro $ROS_DISTRO
colcon build
Both packages are built.
We need to approve these changes and make a new release of the packages.
All the bin
builds of demos packages are aborted. All the related source
packages are failing because of a problem with the branch in the repo https://github.com/ros2-gbp/rmf_demos-release.
08:47:42 # BEGIN SUBSECTION: get sources
08:47:43 Invoking 'git clone --branch debian/ros-humble-rmf-demos-assets_2.0.0-1_jammy --depth 1 --no-single-branch https://github.com/ros2-gbp/rmf_demos-release.git /tmp/sourcedeb/source'
08:47:45 Cloning into '/tmp/sourcedeb/source'...
08:47:45 fatal: Remote branch debian/ros-humble-rmf-demos-assets_2.0.0-1_jammy not found in upstream origin
08:47:45 # END SUBSECTION
It looks like some kind of problem with the release process, so I'm gonna try to release rmf_demos again.
Changes made to dependencies https://github.com/open-rmf/rmf_ros2/pull/243/commits cherry-picked and released
Pending releases PR https://github.com/ros/rosdistro/pulls/orensbruli
follow up of https://github.com/open-rmf/rmf/issues/251#issuecomment-1273259200
We have cherry-picked the changes from 4e314e1ce6ead2675276679bc559eb0deb7384b2 to rolling and humble and released again.
All packages are green :green_heart: Need to investigate the next steps to get all released.
Testing package installation from testing repos in humble:
https://docs.ros.org/en/rolling/Installation/Testing.html
https://github.com/open-rmf/rmf
rocker --nvidia --x11 --user --net=host ros:humble bash
sudo sed -i 's/ros2\//ros2-testing\//' /etc/apt/sources.list.d/ros2-latest.list
sudo apt update
sudo apt install ros-humble-rmf-demos-gz-classic
. /opt/ros/humble/setup.bash
ros2 launch rmf_demos_gz_classic office.launch.xml server_uri:="ws://localhost:8000/_internal"
sudo sed -i 's/ros2\//ros2-testing\//' /etc/apt/sources.list.d/ros2-latest.list
sudo apt update
sudo apt install ros-humble-rmf-demos-gz
. /opt/ros/humble/setup.bash
ros2 launch rmf_demos_gz office.launch.xml server_uri:="ws://localhost:8000/_internal"
:ok_hand:
Checking install sizes:
sudo apt install -y ros-humble-rmf-demos-gz-classic 2>&1 | grep MB
Need to get 765 MB of archives.
After this operation, 2585 MB of additional disk space will be used.
Get:209 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libflite1 amd64 2.2-3 [13.7 MB]
Get:271 http://archive.ubuntu.com/ubuntu jammy/universe amd64 proj-data all 8.2.1-1 [10.0 MB]
Get:324 http://archive.ubuntu.com/ubuntu jammy/universe amd64 gazebo-common all 11.10.2+dfsg-1 [35.7 MB]
Get:341 http://archive.ubuntu.com/ubuntu jammy/main amd64 gfortran-11 amd64 11.2.0-19ubuntu1 [11.2 MB]
Get:387 http://packages.ros.org/ros2-testing/ubuntu jammy/main amd64 ros-humble-rmf-building-map-tools amd64 1.6.0-1jammy.20221006.183829 [10.8 MB]
Get:455 http://archive.ubuntu.com/ubuntu jammy/main amd64 libicu-dev amd64 70.1-2 [11.6 MB]
Get:652 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libgdal-dev amd64 3.4.1+dfsg-1build4 [10.6 MB]
Get:762 http://archive.ubuntu.com/ubuntu jammy/universe amd64 libvtk9.1 amd64 9.1.0+really9.1.0+dfsg2-3build1 [20.2 MB]
Get:779 http://packages.ros.org/ros2-testing/ubuntu jammy/main amd64 ros-humble-rmf-demos-maps amd64 2.0.2-1jammy.20221010.181144 [264 MB]
Get:843 http://archive.ubuntu.com/ubuntu jammy/universe amd64 pocketsphinx-en-us all 0.8.0+real5prealpha+1-14ubuntu1 [27.6 MB]
[ERROR] [rviz2-10]: process has died [pid 10652, exit code 127, cmd 'rviz2 -d /opt/ros/humble/share/rmf_demos/include/office/office.rviz'].
[rviz2-10] rviz2: error while loading shared libraries: libOgreMain.so.1.12.1: cannot open shared object file: No such file or directory
On a clean humble docker container (rocker --nvidia --x11 --user --net=host ros:humble bash
):
sudo apt update
apt install ros-humble-rviz2
sudo apt install ros-humble-rviz2
dpkg -L ros-humble-rviz2
ldd /opt/ros/humble/bin/rviz2 | grep found
libOgreMain.so.1.12.1 => not found
libOgreMain.so.1.12.1 => not found
libOgreOverlay.so.1.12.1 => not found
https://build.ros2.org/job/Hbin_uJ64__rviz2__ubuntu_jammy_amd64__binary/20/console
It looks like rviz2 uses it's own vendoring of ogre: https://build.ros2.org/job/Hbin_uJ64__rviz_ogre_vendor__ubuntu_jammy_amd64__binary/
I'm retarded. I assumed the ros humble container already had executed ./opt/ros/humble/setup.bash
Resolved :+1:
Error while testing rmf_demos:
[fleet_manager-15] ERROR: Exception in ASGI application
[fleet_manager-15] File "/usr/lib/python3/dist-packages/starlette/middleware/errors.py", line 181, in __call__
[fleet_manager-15] File "/usr/lib/python3/dist-packages/starlette/middleware/errors.py", line 159, in __call__
[fleet_manager-15] TypeError: '<' not supported between instances of 'NoneType' and 'int'
@luca-della-vedova points to this known problem: https://github.com/open-rmf/rmf_demos/pull/109#issuecomment-1169567420
Also, rmf_demos_fleet_adapter
depends on flask-socketio
and fastapi
but those packages are not dependencies of anyone installed (apt install old versions of those).
We have decided to remove the whole rmf_demos
repository from the release.
I'm gonna keep doing tests by manually installing pip versions of flask-socketio
and fastapi
and building rmf_demos
.
rocker --nvidia --x11 --net=host ros:humble bash
sudo sed -i 's/ros2\//ros2-testing\//' /etc/apt/sources.list.d/ros2-latest.list
sudo apt update; apt install -y vim python3-pip; pip3 install flask-socketio fastapi uvicorn
read -p "Enter the repo: " repo
repo=${repo:-https://github.com/open-rmf/rmf_demos}
git clone $repo -b $ROS_DISTRO
cd $(echo $repo | rev | cut -d'/' -f1 | rev | cut -d'.' -f1)
rosdep update
rosdep install --from-paths . --ignore-src -r -y
colcon build
. install/setup.bash
ros2 launch rmf_demos_gz_classic office.launch.xml server_uri:="ws://127.0.0.1:8000" | grep -i error &
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge -n 3 --use_sim_time
The office example described in https://github.com/open-rmf/rmf_demos is running.
Output warning:
[fleet_adapter-16] [WARN] [1665667605.930484869] [tinyRobot_fleet_adapter]: BroadcastClient unable to connect to [ws://127.0.0.1:8000/]. Please make sure server is running. Error msg: invalid state
API server should be running and these messages should not appear.
I think I just realized that there's one part of the entire RMF framework I'm unaware of. Is the rmf_web, api_server, etc tested in any of the demos, tutorials, or examples?
Looking into this: https://github.com/open-rmf/rmf_deployment_template#example-rmf_demos-with-docker
Looking into https://github.com/open-rmf/rmf_deployment_template#example-rmf_demos-with-docker
docker run --network=host -it ghcr.io/open-rmf/rmf_deployment_template/rmf-web-rmf-server:humble
WARNING:fastapi:authentication is disabled
python3: /tmp/binarydeb/ros-galactic-cyclonedds-0.8.0/src/core/ddsi/src/ddsi_serdata_pserop.c:78: serdata_pserop_new: Assertion `d->identifier == CDR_LE || d->identifier == CDR_BE' failed.
Trying to build and run an updated docker versions of rmf_api_server.
Rolling and humble packages have been released.
Builds: https://github.com/open-rmf/rmf/blob/main/reports/builds.md