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

Jazzy ROS image is now based on "noble" (backport #220) #243

Merged
merged 20 commits into from
Aug 17, 2024

Conversation

evan-palmer
Copy link
Collaborator

@evan-palmer evan-palmer commented Aug 17, 2024

Changes Made

I am not tracking the underlying changes to the ROS image in great detail, @evan-palmer, you may have more info or a better perspective on how to resolve this issue.

However, it looks like Docker images for "rolling" are now built on Ubuntu "noble."

This brings a few major changes, some of which were also addressed when porting to "jazzy"

This PR pulls out the elements specific to "noble" without the jazzy-specific adaptations (particularly building MAVROS from source).

Specifically:

  • Use the existing non-root user "ubuntu" (uid/gid 1000) which already exists in the image.
  • Python packages installed with pip are placed in a venv

Please note: this image must use Gazebo "harmonic," so it is based on #223 . Complete and merge that PR before merging this PR.

Issues Closed

Fixes #168

dependabot bot and others added 19 commits June 5, 2024 15:49
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…193)

* Fixed ardusub_gazebo install and mavros configurations

* Remapped controller manager topic to robot state publisher topic

* Added missing gstreamer dependency
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* 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 <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]>
@evan-palmer evan-palmer changed the base branch from main to jazzy August 17, 2024 20:52
Copy link

mergify bot commented Aug 17, 2024

Please target the main branch for development, we will backport the changes to jazzy for you if approved and if they don't break API.

WORKDIR $USER_WORKSPACE/src/
ARG MAVROS_RELEASE=ros2
# mavlink-gdp-release has not been released for Jazzy, so we use the Rolling release
ARG MAVLINK_RELEASE=release/rolling/mavlink
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@amarburg Wanted to point this out to you

@evan-palmer
Copy link
Collaborator Author

The jazzy-ci pipeline will fail until this is merged because the CI image has not been pushed for Jazzy.

@evan-palmer evan-palmer merged commit 771f678 into jazzy Aug 17, 2024
7 of 8 checks passed
@evan-palmer evan-palmer deleted the backport-220-jazzy branch August 17, 2024 23:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants