-
Notifications
You must be signed in to change notification settings - Fork 74
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Proposal: Creation of a Devcontainer for ROS2 Humble Andino Gazebo Development
Description
As a part of our ongoing efforts to improve the developer experience and streamline the setup process, I propose the creation of a Devcontainer for the ROS2 Humble Andino Gazebo development environment. A Devcontainer would allow for a consistent development setup across different environments, reducing setup time and potential configuration issues.
Benefits
- Consistency: Ensures that all developers work in an identical environment.
- Ease of Setup: Simplifies the initial setup process, making it easier for new contributors to start working on the project.
- Portability: Developers can switch between different machines without worrying about reconfiguring the development environment.
- Integrated Tools: Ability to pre-configure tools and extensions specific to the project.
Proposed Setup:
-
Base Image: Use the official ROS2 Humble base image as the starting point.
-
Development Tools: Include commonly used development tools and dependencies such as:
colcon
rosdep
gazebo
vscode extensions for ROS
Configuration:
- Include .devcontainer/devcontainer.json with the necessary configuration.
- Provide scripts for setting up the environment and initializing dependencies.
Example of 'devcontainer.json':
{
"name": "ROS2 Humble Andino Gazebo Development",
"image": "ros:humble",
"extensions": [
"ms-iot.vscode-ros",
"ms-vscode.cpptools",
"ms-python.python"
],
"settings": {
"terminal.integrated.shell.linux": "/bin/bash"
},
"postCreateCommand": "rosdep update && rosdep install --from-paths src --ignore-src -r -y && colcon build",
"runArgs": [
"--net=host"
],
"workspaceMount": "source=${localWorkspaceFolder},target=/ws,type=bind,consistency=cached",
"workspaceFolder": "/ws"
}
Tasks:
- Create a .devcontainer folder in the root of the repository.
- Add the devcontainer.json file with the proposed configuration.
- Update the README.md to include instructions on using the Devcontainer.
I look forward to your feedback and suggestions.
Thank you
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request
Type
Projects
Status
🆕 Backlog