-
Notifications
You must be signed in to change notification settings - Fork 36
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
Earthfile in spaceros folder does not work as expected #88
Comments
Issue 2 looks like an oversight from when the Earthfile was split between the docker and Space ROS repo proper. We don't want to dump too much energy into the Earthly file before space-ros/space-ros#107 is resolved, but patching to conform to the expected behavior you listed should be on our hit-list for this release. |
Fixing #91 should address issue 1 as well |
Ok, then my suggestion is to clarify way forward regarding space-ros/space-ros#107 and then patch the files accordingly. We don't need to fully close 107, but having an action plan would help us to avoid unnecessary refactors. IMO if we want to avoid redundant refactors, the sequence should look like this: Does it make sense? Also, by when we want to have a decision reg. 107? Maybe we should add it to the meeting agenda space-ros/space-ros#117. After we discuss the course of action, I can resolve both this issue and #91. |
Added Issue no.3 |
As we discussed in the call, I will start fixing Issue 1 and 2 prior to making the decision space-ros/space-ros#114 |
TL;DR: If we open branch that fixes the distribution in the |
…pace-ros#88) Now 'excluded-pkgs.txt' can be used both to create list of repos (vcs), as well as to install necessary system dependencies (rosdep).
Ikos package does exist in rosdep index and by keeping it here we need to exclude it with `rosdep --skip-keys` in spaceros build. After this commit, skip-keys on ikos won't be required.
Now 'excluded-pkgs.txt' can be used both to create list of repos (vcs), as well as to install necessary system dependencies (rosdep).
Hi @Bckempa. Note that the last one has dependencies on previous PRs. |
Now 'excluded-pkgs.txt' can be used both to create list of repos (vcs), as well as to install necessary system dependencies (rosdep).
According to discussion space-ros/space-ros#126 (comment)
Now 'excluded-pkgs.txt' can be used both to create list of repos (vcs), as well as to install necessary system dependencies (rosdep).
According to discussion space-ros/space-ros#126 (comment)
* Make excluded pkgs consistent across rosdep and vcs. * Add ikos to skip-keys according to discussion space-ros/space-ros#126 (comment) Reuse 'excluded-pkgs.txt' for both vcs checkout as well as rosdep.
We've decided not to keep this workflow definition, to avoid tech debt.
…of-repos-file Remove vcs-repos Action job (space-ros#88)
We've decided not to keep this workflow definition, to avoid tech debt.
…ration-of-repos-file Remove vcs-repos Action job (space-ros/docker#88)
) * Make excluded pkgs consistent across rosdep and vcs. * Add ikos to skip-keys according to discussion https://github.com/space-ros/space-ros/discussions/126space-ros/docker#discussioncomment-8247215 Reuse 'excluded-pkgs.txt' for both vcs checkout as well as rosdep.
) * Make excluded pkgs consistent across rosdep and vcs. * Add ikos to skip-keys according to discussion https://github.com/space-ros/space-ros/discussions/126space-ros/docker#discussioncomment-8247215 Reuse 'excluded-pkgs.txt' for both vcs checkout as well as rosdep.
) * Make excluded pkgs consistent across rosdep and vcs. * Add ikos to skip-keys according to discussion https://github.com/space-ros/space-ros/discussions/126space-ros/docker#discussioncomment-8247215 Reuse 'excluded-pkgs.txt' for both vcs checkout as well as rosdep.
I think i discovered some issues with https://github.com/space-ros/docker/blob/main/spaceros/Earthfile
Issue 1
Update 17.12.2023 - This issue will be fixed by: #89
COPY statement refers old branch of main space-ros repo (link)
Current behavior: As a result, changes to files in space-ros repo are not reflected in docker build. This is because earthly-wrapper is some old branch with latest commit over a year ago.
Expected behavior (my guess): the latest earthfile from main branch is refered.
Check Earthly docs for more details on COPY syntax.
Issue 2
Update 17.12.2023 - This issue will be fixed by: #89
Do we even want to refer Earthfile from space-ros main repo in this build?
Current behavior: ros2.repos file from space-ros repo and ros2.repos file produced in this build may differ. This is because in this build, we refer repos-file task from space-ros earthly file, which means that every command from repos-file task is executed.
Expected behavior (my guess): We should clone ros2.repos file from space-ros repo, instead of re-running all commands.
Issue 3
There are some issues with rosdep
https://github.com/space-ros/docker/blob/c60ab974919ceb91e6ead0c2e28c9b9178c06be8/spaceros/Earthfile#L115C1-L115C345
RUN rosdep install --from-paths src --ignore-src --rosdistro rolling -y --skip-keys "console_bridge fastcdr fastrtps rti-connext-dds-5.3.1 urdfdom_headers rmw_connextdds ros_testing rmw_connextdds rmw_fastrtps_cpp rmw_fastrtps_dynamic_cpp composition demo_nodes_py lifecycle rosidl_typesupport_fastrtps_cpp rosidl_typesupport_fastrtps_c ikos"
Footnotes
As an alternative, we could specify the exact tag of
ubuntu:jammy
docker image and generate a list of system dependencies with exact package versions the same way we do it for ros2.repos (I guess it should be doable with rosdep) ↩The text was updated successfully, but these errors were encountered: