-
Notifications
You must be signed in to change notification settings - Fork 17
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
Add "robot" container #221
Add "robot" container #221
Conversation
Building for Rolling / CI is broken on this until #220 (Rolling is now based on Noble) is resolved. I'm testing locally by explicitly building for iron:
|
I like the idea of adding making |
Renamed *.repos --> blue.repos and sim.repos
Getting clean builds for all of the different branches requires #220 and #223 |
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.
Looks good! Thanks for adding this
@@ -36,6 +37,14 @@ RUN apt-get -q update \ | |||
&& apt-get clean -y \ | |||
&& rm -rf /var/lib/apt/lists/* | |||
|
|||
# This stage includes |
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.
Thanks for adding these docs. This is helpful.
ba77c25
into
Robotic-Decision-Making-Lab:main
@mergify backport humble iron |
✅ Backports have been created
|
* Initial commit of _robot container and devcontainer * Add xacro as an exec_depend for blue_description * Update comments * Remove unused Docker stage "blue_src_and_deps" Renamed *.repos --> blue.repos and sim.repos --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit ba77c25) # Conflicts: # blue.repos
* Initial commit of _robot container and devcontainer * Add xacro as an exec_depend for blue_description * Update comments * Remove unused Docker stage "blue_src_and_deps" Renamed *.repos --> blue.repos and sim.repos --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit ba77c25) # Conflicts: # blue.repos
* Add "robot" container (#221) * Initial commit of _robot container and devcontainer * Add xacro as an exec_depend for blue_description * Update comments * Remove unused Docker stage "blue_src_and_deps" Renamed *.repos --> blue.repos and sim.repos --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit ba77c25) # Conflicts: # blue.repos * Fixed merge conflict from mergify * Use "humble" branch of ros_gz. --------- Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> Co-authored-by: Evan Palmer <evanp922@gmail.com> Co-authored-by: Aaron Marburg <amarburg@uw.edu>
* Add "robot" container (#221) * Initial commit of _robot container and devcontainer * Add xacro as an exec_depend for blue_description * Update comments * Remove unused Docker stage "blue_src_and_deps" Renamed *.repos --> blue.repos and sim.repos --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit ba77c25) # Conflicts: # blue.repos * Fixed merge conflict from mergify * Use "iron" branch of ros_gz --------- Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> Co-authored-by: Evan Palmer <evanp922@gmail.com> Co-authored-by: Aaron Marburg <amarburg@uw.edu>
* Updated controller manager launch in demo * Resolved bug in BlueROV2 Heavy and Heavy Reach launch configurations (#193) (#194) * Fixed ardusub_gazebo install and mavros configurations * Remapped controller manager topic to robot state publisher topic * Added missing gstreamer dependency (cherry picked from commit 9ddb154) Co-authored-by: Evan Palmer <evanp922@gmail.com> * Added additional resources for USB/IP tutorial (#196) (#198) (cherry picked from commit 531ed83) Co-authored-by: Evan Palmer <evanp922@gmail.com> * Bump docker/build-push-action from 6.1.0 to 6.2.0 (#200) (#202) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.1.0 to 6.2.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v6.1.0...v6.2.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (cherry picked from commit 8639c41) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Add xacro as an exec_depend for blue_description (#215) (#219) Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit 506be06) Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> * Style: Upcase "as" in Dockerfile (backport #214) (#217) * Fix case on "as" in Dockerfile (#214) Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit 8bbb19e) # Conflicts: # .docker/Dockerfile * Resolved merge conflicts * Bump build versions --------- Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> Co-authored-by: Evan Palmer <evanp922@gmail.com> * Add "robot" container (backport #221) (#225) * Add "robot" container (#221) * Initial commit of _robot container and devcontainer * Add xacro as an exec_depend for blue_description * Update comments * Remove unused Docker stage "blue_src_and_deps" Renamed *.repos --> blue.repos and sim.repos --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit ba77c25) # Conflicts: # blue.repos * Fixed merge conflict from mergify * Use "iron" branch of ros_gz --------- Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> Co-authored-by: Evan Palmer <evanp922@gmail.com> Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Use Gazebo Harmonic (#223) (#231) * Update to use Harmonic * Add "third-party" rosdep from OSRF for gazebo deps. * Added comment on "user ROOT" rather than sudo, joined two adjacent apt-get install steps. * Correct error in comment --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit 8a4e05a) Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> * Install ros_gz from binary package (iron, humble) (#228) * Install ros_gz from package, not from source, remove sim.repos * Removed additional apt-get lines from cherry-pick --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Install ros_gz from binary package (iron, humble) (#228) * Install ros_gz from package, not from source, remove sim.repos * Removed additional apt-get lines from cherry-pick --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> (cherry picked from commit 0e297bc) # Conflicts: # sim.repos --------- Co-authored-by: Evan Palmer <evanp922@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> Co-authored-by: Aaron Marburg <amarburg@uw.edu>
* Bump docker/login-action from 3.1.0 to 3.2.0 (#172) Bumps [docker/login-action](https://github.com/docker/login-action) from 3.1.0 to 3.2.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](docker/login-action@v3.1.0...v3.2.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/build-push-action from 5.3.0 to 5.4.0 (#175) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.3.0 to 5.4.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v5.3.0...v5.4.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump braces from 3.0.2 to 3.0.3 in /docs (#182) Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3. - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](micromatch/braces@3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/build-push-action from 5.4.0 to 6.0.0 (#179) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.4.0 to 6.0.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v5.4.0...v6.0.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/build-push-action from 6.0.0 to 6.1.0 (#187) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.0.0 to 6.1.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v6.0.0...v6.1.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Resolved bug in BlueROV2 Heavy and Heavy Reach launch configurations (#193) * Fixed ardusub_gazebo install and mavros configurations * Remapped controller manager topic to robot state publisher topic * Added missing gstreamer dependency * Added additional resources for USB/IP tutorial (#196) * Bump docker/build-push-action from 6.1.0 to 6.2.0 (#200) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.1.0 to 6.2.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v6.1.0...v6.2.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/build-push-action from 6.2.0 to 6.3.0 (#203) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.2.0 to 6.3.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v6.2.0...v6.3.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/setup-qemu-action from 3.0.0 to 3.1.0 (#204) Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.0.0 to 3.1.0. - [Release notes](https://github.com/docker/setup-qemu-action/releases) - [Commits](docker/setup-qemu-action@v3.0.0...v3.1.0) --- updated-dependencies: - dependency-name: docker/setup-qemu-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/setup-qemu-action from 3.1.0 to 3.2.0 (#205) Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.1.0 to 3.2.0. - [Release notes](https://github.com/docker/setup-qemu-action/releases) - [Commits](docker/setup-qemu-action@v3.1.0...v3.2.0) --- updated-dependencies: - dependency-name: docker/setup-qemu-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/build-push-action from 6.3.0 to 6.5.0 (#206) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.3.0 to 6.5.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](docker/build-push-action@v6.3.0...v6.5.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/login-action from 3.2.0 to 3.3.0 (#207) Bumps [docker/login-action](https://github.com/docker/login-action) from 3.2.0 to 3.3.0. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](docker/login-action@v3.2.0...v3.3.0) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix case on "as" in Dockerfile (#214) Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Add xacro as an exec_depend for blue_description (#215) Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Add "robot" container (#221) * Initial commit of _robot container and devcontainer * Add xacro as an exec_depend for blue_description * Update comments * Remove unused Docker stage "blue_src_and_deps" Renamed *.repos --> blue.repos and sim.repos --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Use Gazebo Harmonic (#223) * Update to use Harmonic * Add "third-party" rosdep from OSRF for gazebo deps. * Added comment on "user ROOT" rather than sudo, joined two adjacent apt-get install steps. * Correct error in comment --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Rolling ROS image is now based on "noble" (#220) * Update to use Harmonic * Update main Dockerfile for "noble" base images: - Use the provided user "ubuntu" at UID 1000 - Use a venv for user-installed python packages * Add "third-party" rosdep from OSRF for gazebo deps. * Install cppzmq-dev for Gazebo * Allow pushing to apl-ocean-engineering * Build mavros from source. * Build mavros from source, with patch to fix yaml-cpp linkage * ardupilot script should not activate venv by default. Activate blue venv instead. * Reverse change in docker.yaml action. * Insert comment before arduplot additions to .bashrc * Update username in .devcontainer/ * Replace patches for mavros/mavlink with sed one-liners. * Extend Docker build timeout in github actions to allow for extended arm64 build times. * timeout_minutes should be at job level? * Disabled arm64 build for "robot" Also: * Set python in venv as default Python in dev container * Remove build timeout in github action (which was ignored) * Correctly disable arm64 build. --------- Co-authored-by: Aaron Marburg <amarburg@uw.edu> * Backport #220 into Jazzy * Removed testing image from nvidia-desktop compose script --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Aaron Marburg <amarburg@apl.washington.edu> Co-authored-by: Aaron Marburg <amarburg@uw.edu>
Changes Made
The existing Dockerfile defines a "robot" stage which contains the Blue source and some deps but no other dependency repos from
blue.repos
. This means "robot" is not runnable "out of the box," requires multiple manual stages (vcs import ...
,rosdep ...
,colcon build ...
, etc ) to make it runnable.This PR:
The PR is opinionated:
blue.repos
should be split into separateblue_robot.repos
(no ros_gz) andblue_sim.repos
(adds ros_gz). Might be another way to solve this problem.Testing
Ongoing.