Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/athackst/vscode-ros2-features
VSCode ROS2 devcontainer features
https://github.com/athackst/vscode-ros2-features
Last synced: 6 days ago
JSON representation
VSCode ROS2 devcontainer features
- Host: GitHub
- URL: https://github.com/athackst/vscode-ros2-features
- Owner: athackst
- License: mit
- Created: 2023-01-19T16:28:25.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-20T20:37:21.000Z (over 1 year ago)
- Last Synced: 2023-02-25T23:51:57.020Z (over 1 year ago)
- Language: Shell
- Size: 22.5 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VSCode ROS2 Features
> This repo provides a [dev container Features](https://containers.dev/implementors/features/) for [ros2](https://docs.ros.org/en/humble/index.html).
## Usage
### `ros2`
Running `ros2` inside the built container will install ros2 inside of the container.
```jsonc
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/devcontainers/vscode-ros2-features/ros2:latest": {
"distro": "humble"
}
}
}
```## License
This package is licensed under the MIT license.
It used the template [devcontainers feature starter](https://github.com/devcontainers/feature-starter) as a starting template.
It uses installation instructions from [ROS2](https://docs.ros.org/en/foxy/Installation.html)
## Developing
### Repo and Feature Structure
```
├── src
│ ├── ros2
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
...
```The dev container _options_ are found in [the documented dev container properties](https://containers.dev/implementors/features/#devcontainer-feature-json-properties) from the feature's `devcontainer-feature.json` file, and execute in the `install.sh` entrypoint script in the container during build time.
### Packaging
You can run the dev container locally using an [implementing tool](https://containers.dev/supporting#tools). Implementing tools are also free to process attributes under the `customizations` property as desired.
```bash
devcontainer features package -f src
```### Testing
You can test the dev container locally
```bash
devcontainer features test --base-image ubuntu:22.04 .
```### Tasks
- **test (autogenerated)** Run test.sh over autogenerated feature with default options
- **test (scenarios)** Test all scenarios
- **test (all)** Test both
- **package** Package the feature