-
Notifications
You must be signed in to change notification settings - Fork 277
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
Add Fuel World Support #274
Conversation
Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The example given on the PR works for me.
Worlds with spaces
I added .sdf
files to the test worlds on Fuel that only had .world
until now:
- https://app.ignitionrobotics.org/OpenRobotics/fuel/worlds/Test%20world
- https://app.ignitionrobotics.org/OpenRobotics/fuel/worlds/Test%20world%202
But I'm not being able to load either of them. I tried:
ign gazebo -v 4 https://fuel.ignitionrobotics.org/1.0/OpenRobotics/fuel/worlds/Test%20world
and
ign gazebo -v 4 "https://fuel.ignitionrobotics.org/1.0/OpenRobotics/fuel/worlds/Test world"
I didn't dig in to find out what the problem is, I suspect it's about encoding the space
Tests
Do you mind adding a test to ign_TEST.cc
?
In order to avoid relying on the live server for the test, you could just test the cached case, and point to a custom cache inside the test
folder, using the IGN_FUEL_CACHE_PATH variable to point there.
Loading file programmatically
With the current implementation, it isn't possible to load a Fuel world if it's passed to ServerConfig::SetSdfFile. I see on the ign-launch PR that you're resolving the world file with Fuel before passing it to ServerConfig
. I think it would be more general to just support that directly inside ServerConfig
. Do you think you could move that logic here?
When you do, it would also be good to add a test to Server_TEST.cc
I think the I'll make all remaining updates and changes now. |
Ha, thanks! I copied that from the Bibtex on the world's page, which is wrong: https://app.ignitionrobotics.org/OpenRobotics/fuel/worlds/Test%20world I opened a PR to fix it: https://gitlab.com/ignitionrobotics/web/app/-/merge_requests/62 |
Signed-off-by: John Shepherd <[email protected]>
…nitionrobotics/ign-gazebo into jshep1/add_fuel_world_support Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works great.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The functionality works. I just have some final comments about the tests and other tweaks.
test/worlds/fuel.ignitionrobotics.org/OpenRobotics/worlds/Test%20world/2/test.world
Outdated
Show resolved
Hide resolved
Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
Signed-off-by: John Shepherd <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, feel free to merge with happy CI.
This PR adds functionality for the user to specify a fuel world URL after
ign gazebo
, ie,ign gazebo https://staging-fuel.ignitionrobotics.org/1.0/gmas/worlds/ShapesClone
It will first check for a cached copy of the world, and then download the world if no cached copy is found. After this, it will search for an sdf file on the locally downloaded/cached path and load the first one found.
See also gazebosim/gz-launch#43
Closes #89