-
Notifications
You must be signed in to change notification settings - Fork 3
Add checks for simulation software executable paths and existence of corsika interaction paths. #2030
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
Conversation
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.
Pull request overview
This PR tightens validation around external simulation software configuration by enforcing that configured paths point to existing directories/executables, and by introducing a dedicated helper to locate executables in a given directory. It also updates unit tests and documentation to reflect the new environment variable expectations.
Changes:
- Removed the legacy executable lookup helper (
program_is_executable) and addedfind_executable_in_dir. - Updated
_Configpath/executable properties to validate existence/executability (raising on invalid config). - Updated unit tests and user/developer docs for the new environment variable requirements.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
src/simtools/utils/general.py |
Adds find_executable_in_dir helper used by settings to validate executables. |
src/simtools/settings.py |
Enforces directory existence for sim_telarray/CORSIKA paths and uses the new executable finder. |
tests/unit_tests/utils/test_general.py |
Removes tests for the deleted helper and adds coverage for find_executable_in_dir. |
tests/unit_tests/test_settings.py |
Updates settings tests to match new exception-based behavior and interaction-table configuration. |
docs/source/user-guide/getting_started.md |
Documents required env vars for sim_telarray/CORSIKA + interaction tables (but has a snippet issue). |
docs/source/developer-guide/getting_started_as_developer.md |
Adjusts wording about environment variables in the dev container. |
docs/source/components/databases.md |
Removes sim_telarray path from DB-focused .env snippets. |
docs/changes/2030.feature.md |
Adds release note entry for the change (but currently inaccurate). |
|
EshitaJoshi
left a comment
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.
Thanks for the PR!




Add checks for simulation software executable paths and existence of corsika interaction paths.
Also update the documentation to make the setting of the environmental variables clearer.
Remove unused
general.is_exeucutable(which can be replaced byshutil.which).