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

Stateless Aerie - Simulation #1536

Merged
merged 17 commits into from
Sep 3, 2024
Merged

Stateless Aerie - Simulation #1536

merged 17 commits into from
Sep 3, 2024

Conversation

Mythicaeda
Copy link
Contributor

@Mythicaeda Mythicaeda commented Aug 20, 2024

Description

Adds three packages:

  • orchestration: package containing classes useful for orchestrating aerie (ie, calling simulation, loading a mission model)
  • stateless-aerie: package containing a Java CLI that runs aerie in a stateless mode (compared to the Python CLI, which runs against a venue)
  • type-utils: package containing types commonly used by various parts of the system (ie Plan, MissionModelId). Created as a first step towards not requiring so many parts of the system to import other packages in order to use common types: ie merlin_driver. @mattdailis I'd like your thoughts on this package's existence/contents.

Verification

Unit tests were added that the orchestration works as expected. Reference JSONs of simulation results for tests were manually validated.

Documentation

Docs need to be created for the new JSON schemas: Sim Configs, Sim Results.

Future work

Integration with Procedural Scheduling.
Further work to extract more common types into type-utils and common parsers into a parsing-utils-type package.

@Mythicaeda Mythicaeda requested a review from a team as a code owner August 20, 2024 23:57
@Mythicaeda Mythicaeda requested review from mattdailis and removed request for jmdelfa August 20, 2024 23:57
@Mythicaeda Mythicaeda added the feature A new feature or feature request label Aug 20, 2024
@Mythicaeda Mythicaeda force-pushed the feat/headless-aerie branch from a85e0fa to dd76d59 Compare August 20, 2024 23:58
@Mythicaeda Mythicaeda force-pushed the feat/headless-aerie branch from dd76d59 to dd01c9e Compare August 21, 2024 16:07
Copy link
Contributor

@goetzrrGit goetzrrGit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some non-blocker comments. You mentioned in the standup 'type-utils' needs to be discussed on further. I am not sure if you were going to wait on that meeting or remove the commit from this PR and merged?

Copy link
Collaborator

@mattdailis mattdailis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work!

Mythicaeda and others added 3 commits September 3, 2024 15:58
- Add new Plan Constructor with Sim Config

Co-authored-by: Ryan Goetz <[email protected]>
- Make Duration.isEqualTo null-safe
Mythicaeda and others added 9 commits September 3, 2024 16:25
- Uses deprecated SecurityManager -- see comment on class for more details
- Created as the CLI calls `System.exit()` under certain conditions (such as displaying help text for a subcommand). This allows those conditions to be tested.
* Verify that the generated temporary filename conforms to file naming conventions and remove any invalid characters
With the changes made, a Plan now contains all of the information necessary to simulate.

Additionally, since this class will be more relevant to external users via the Orchestration package, comment and privatize fields.

Additionally, prevent the sim config and activity directive maps from being null.

Co-authored-by: Ryan Goetz <[email protected]>
- reduces the codebase of the system users of orchestration-utils need to depend on
- avoids code duplication
@Mythicaeda Mythicaeda merged commit 7478704 into develop Sep 3, 2024
10 checks passed
@Mythicaeda Mythicaeda deleted the feat/headless-aerie branch September 3, 2024 23:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A new feature or feature request
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants