-
Notifications
You must be signed in to change notification settings - Fork 179
Add Dockerfile #6
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
Conversation
|
Sorry I hadn't said anything yet, I was waiting for #3 to get merged so we can use Crystal and then merge this one. |
given mix of build dependencies
|
@esteve I've updated this PR for adding a Dockerfile to target the latest foxy support. Having a ready to build dev environment should really help with onboarding more contributors to the project. I was speaking with some rust mentors during RustConf 2020 last week, and they asked for an entrypoint to build and run the project as to get started. |
|
@lelongg , could you review this Dockerfile PR. It'd be really nice to to provide new contributors a concrete reference on how to build the rust client library from source in a reproducible environment. Many Rust users may not be familiar with ROS's dipdacies and build setup, and vice versa for ROS users. |
* Remove lockfiles from being tracked Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Port draft action implementation from #410 Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Rework readiness for waitables Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Reworking action server goal handle lifecycles Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fleshing out the state machines for action server goals -- cancelling is WIP Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finished action server goal state machine API -- need to finish action_server.rs Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Progress on action_server implementation Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Action server finished -- needs testing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Creating action server and action goal receiver -- needs testing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Introducing action clients into the wait set processing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Incorporate action clients into wait sets Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fleshing out implementation of action clients Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Implementing goal status client Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Implementing goal result client Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * CancellationClient API in progress Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finish action cancellation request API Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finish API for action clients -- needs testing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Link against rcl_action Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Add initial tests and improve ergonomics Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Add co-author credit Co-authored-by: Nathan Wiebe Neufeldt <wn.nathan@gmail.com> Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Re-export traits from rosidl_runtime_rs Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Update bindings to include actions -- added script for automating the binding generation Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Apply cargo fmt Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Update bindings for kilted Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> * Update bindings for humble Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> * Update bindings for rolling Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> * Fix use of serde Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Use desktop image so it includes rcl_action which we need for action bindings Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix serde Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finish documentation for GoalClientStream Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Enable serde for goal status info Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix action cancellation pipeline Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * More trait re-exports Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Add tests for action cancellation Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix use of action client options Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix style Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Remove use of .clear_poison because it is not stable in 1.75 Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * chore: revert bindings-related changes (#5) Signed-off-by: Esteve Fernandez <esteve@apache.org> * update rosidl_runtime_rs for action support (#6) Signed-off-by: Esteve Fernandez <esteve@apache.org> * revert bindings generation changes --------- Signed-off-by: Michael X. Grey <greyxmike@gmail.com> Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> Signed-off-by: Esteve Fernandez <esteve@apache.org> Co-authored-by: Nathan Wiebe Neufeldt <wn.nathan@gmail.com> Co-authored-by: Esteve Fernandez <33620+esteve@users.noreply.github.com>
* Remove lockfiles from being tracked Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Port draft action implementation from #410 Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Rework readiness for waitables Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Reworking action server goal handle lifecycles Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fleshing out the state machines for action server goals -- cancelling is WIP Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finished action server goal state machine API -- need to finish action_server.rs Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Progress on action_server implementation Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Action server finished -- needs testing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Creating action server and action goal receiver -- needs testing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Introducing action clients into the wait set processing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Incorporate action clients into wait sets Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fleshing out implementation of action clients Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Implementing goal status client Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Implementing goal result client Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * CancellationClient API in progress Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finish action cancellation request API Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finish API for action clients -- needs testing Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Link against rcl_action Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Add initial tests and improve ergonomics Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Add co-author credit Co-authored-by: Nathan Wiebe Neufeldt <wn.nathan@gmail.com> Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Re-export traits from rosidl_runtime_rs Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Update bindings to include actions -- added script for automating the binding generation Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Apply cargo fmt Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Update bindings for kilted Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> * Update bindings for humble Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> * Update bindings for rolling Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> * Fix use of serde Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Use desktop image so it includes rcl_action which we need for action bindings Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix serde Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Finish documentation for GoalClientStream Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Enable serde for goal status info Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix action cancellation pipeline Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * More trait re-exports Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Add tests for action cancellation Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix use of action client options Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Fix style Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * Remove use of .clear_poison because it is not stable in 1.75 Signed-off-by: Michael X. Grey <greyxmike@gmail.com> * chore: revert bindings-related changes (#5) Signed-off-by: Esteve Fernandez <esteve@apache.org> * update rosidl_runtime_rs for action support (#6) Signed-off-by: Esteve Fernandez <esteve@apache.org> * revert bindings generation changes --------- Signed-off-by: Michael X. Grey <greyxmike@gmail.com> Signed-off-by: Michael X. Grey <mxgrey@intrinsic.ai> Signed-off-by: Esteve Fernandez <esteve@apache.org> Co-authored-by: Nathan Wiebe Neufeldt <wn.nathan@gmail.com> Co-authored-by: Esteve Fernandez <33620+esteve@users.noreply.github.com>
This adds a simple Dockerfile that builds rclrs from source using the ros2 docker hub image from the official library. To improve user development, a .dockerignore file is also provided to help prevent inadvertently breaking the build cache when making none code changes. Most of this file is combined from github's .gitignore files for each language present.