Open franklinselva opened 2 months ago
Note for reviewers: This is a large refactoring related to the referenced issue. I think it would be easier to review the work from clear slate. If there is any information needed, please let me know.
Overall I like the changes, but I do have some concern about using a Makefile
to build the Docker images. We're not doing that elsewhere. We've already got both Docker and Earthly in Space ROS, so adding a 3rd build method seems unnecessary. Would you consider moving to either a docker-compose or Earthly build instead?
Also, I'm planning to add a GH action build flow, see issue #35. If I get that in, I'm going to ask you to add build.sh
files to wrap all the builds generically too.
Hi @mkhansenbot, Thanks for your review. I understand the use of Makefile
as a runtime dependency is odd that is not in favor. I will make a direct replacement of the makefile with the shell script to build
, clean
and run
the demos.
Would you consider moving to either a docker-compose or Earthly build instead?
I would not go for Earthly builds for demo since this will also be an addtional runtime dependency for working with the demos. At the moment, Earthly builds are only used as internal tool within collaborators and the scope of the build tool doesn't need to be expanded beyond this point. As mentioned here in the issue, using docker-compose for show casing different demos supported by shell scripts would be an good choice in my opinion. This will ensure, we still have the required entrypoints to the demos.
EDIT: I still see the space-ros
docker images are expected to be pulled from registry and should not build when running the demos.
I have replaced the Makefiles with the build.sh. There are still few changes expected in the shell script based on #35. I will need to hold the rebasing on queued PRs until this PR is resolved.
Thanks for consolidating the simulation assets into one repository! This is a much more straightforward package layout.
@mkhansenbot Can you approve the changes for the CI run?
Is it possible to include docker-compose for the CI run?
@franklinselva - according to GitHub, Docker Compose v1 is no longer supported, can you change your script to use v2? https://github.blog/changelog/2024-04-10-github-hosted-runner-images-deprecation-notice-docker-compose-v1/
Fixes space-ros/space-ros#178
This PR restructures the contents of the demo (from space-ros/simulations, space-ros/docker, space-ros/demos) under a single tree. The main changes include
This PR also restructure the workflow of the past demo in such a way the GUI apps are ran outside the docker. The reason for this change is to adapt different simulation tools and have a reproducible demo across the simulation tools.