Skip to content
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

Standalone gz sim executable #2809

Open
wants to merge 13 commits into
base: gz-sim9
Choose a base branch
from

Conversation

sauk2
Copy link
Contributor

@sauk2 sauk2 commented Mar 5, 2025

🎉 New feature

Related to gazebosim/gz-tools#7

Summary

This PR introduces a standalone executable for gz sim by following a similar approach to gz model. The new executable is integrated into cmdsim.rb.in, replacing the existing functionality.

The majority of the behavior remains consistent, including:

  • Launching the Server using -s
  • Launching the GUI using -g
  • Launching the Quickstart menu when no argument is provided

Changes to the launch behaviour

  • Launching with -s runs the server in the main thread.
  • Launching with -g runs the GUI in the main thread.
  • Running without -s or -g launches both the Server and GUI in separate threads. Since a single SIGINT terminates only one of the threads while the other continues running, a force kill mechanism ensures that both threads terminate properly.

Test it

Check for UNIT_gz_TEST and INTEGRATION_log_system.

Checklist

  • Signed all commits for DCO
  • Added tests
  • Added example and/or tutorial
  • Updated documentation (as needed)
  • Updated migration guide (as needed)
  • Consider updating Python bindings (if the library has them)
  • codecheck passed (See contributing)
  • All tests passed (See test coverage)
  • While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

sauk2 added 3 commits March 4, 2025 22:22
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
@github-actions github-actions bot added the 🏛️ ionic Gazebo Ionic label Mar 5, 2025
sauk2 added 4 commits March 5, 2025 22:13
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
@sauk2 sauk2 force-pushed the sim-standalone-exe branch from 2eda54f to 87f72ba Compare March 9, 2025 16:57
sauk2 added 6 commits March 10, 2025 00:58
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
…d tests

Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
Signed-off-by: Saurabh Kamat <kamatsaurabh01@gmail.com>
@sauk2 sauk2 changed the title [WIP] Standalone gz sim executable Standalone gz sim executable Mar 11, 2025
@sauk2 sauk2 marked this pull request as ready for review March 11, 2025 15:13
@sauk2 sauk2 requested a review from mjcarroll as a code owner March 11, 2025 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏛️ ionic Gazebo Ionic
Projects
Status: Inbox
Development

Successfully merging this pull request may close these issues.

1 participant