Skip to content

Conversation

@ruffsl
Copy link
Contributor

@ruffsl ruffsl commented Mar 5, 2019

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.

@esteve
Copy link
Collaborator

esteve commented Mar 18, 2019

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.

@ruffsl
Copy link
Contributor Author

ruffsl commented Aug 24, 2020

@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.

@ruffsl
Copy link
Contributor Author

ruffsl commented Oct 21, 2020

@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.

@lelongg lelongg merged commit fb3ab1c into ros2-rust:master Oct 27, 2020
esteve added a commit that referenced this pull request Oct 27, 2025
* 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>
esteve added a commit that referenced this pull request Oct 27, 2025
* 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>
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.

3 participants