Skip to content

Conversation

@AlexFernandes-MOVAI
Copy link
Contributor

This pull request introduces support for building and testing new ROS2 Humble-based Docker images for the MOV.AI Spawner, alongside improvements to build automation, package management, and CI workflows. The changes add new Dockerfiles, update build instructions and scripts, extend pre-commit checks, and enhance the Makefile to support multiple flavors and architectures.

Docker image and build system enhancements:

  • Added new docker/humble/Dockerfile to support ROS2 Humble and Humble Ignition spawner base images, including all provisioning, environment, and dependency setup for these flavors. [1] [2] [3]
  • Updated Makefile to support building, running, testing, and pushing all active image flavors (Noetic, Ign-Noetic, Humble, Humble-Python38), with multi-architecture build and size check support.
  • Added new test YAML files for container-structure-test validation of Humble and Noetic images, ensuring correct Python version, OS, and directory structure. [1] [2] [3]

CI and automation improvements:

  • Extended .github/workflows/docker-ci.yml to build and deploy Humble spawner images on tag pushes, with proper secrets and public/private registry handling. [1] [2]
  • Updated .pre-commit-config.yaml to run hadolint checks on both Noetic and Humble Dockerfiles for linting.

Package management and cleanup:

  • Added ROS2 Humble package definitions in docker/humble/packages/packages.apt, requirements.txt, and movai.rosinstall for apt and pip dependencies. [1] [2] [3]
  • Improved package installation and cleanup logic in scripts/base/install-packages.sh for more robust and thorough removal of temporary files and apt cache. [1] [2]
  • Updated Noetic base image version to v2.7.0 and made minor environment variable adjustments for consistency across flavors. [1] [2] [3]

Documentation:

  • Updated README.md to include build instructions for Humble and Humble IGN spawner images.

References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]

- Introduced new Dockerfile for Humble version and updated CI workflow to include Humble builds.
- Updated pre-commit configuration to lint both Noetic and Humble Dockerfiles.
- Enhanced README with build instructions for Humble version.
- Added necessary package definitions and requirements for Humble.
- Updated Noetic Dockerfile to remove hardcoded manager URI and bump mobros version.
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