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

Orchestrator: convert to class implementation (issue 367) #333

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

rlxdev
Copy link
Collaborator

@rlxdev rlxdev commented Jul 17, 2024

πŸ—£ Description

I converted the orchestrator module to a class. My aim when refactoring this module was to minimize the changes to the original code, while converting the individual functions to methods of the Orchestrator class. I kept the use of args from the parsed command line arguments, rather than try to separate out the nearly 20 arguments into instance variables. This helps to keep the structure of the code the same.

If you compare this class implementation with the non-class module, while ignoring
whitespace and empty lines, there are only 37 differences.

πŸ’­ Motivation and context

closes #167

πŸ§ͺ Testing

I've tested these changes by running several different variations of ScubaGoggles runs. With minimal changes made to the code, I've got a high confidence that the class works correctly, as it did when the orchestrator was implemented as separate functions in the module.

βœ… Pre-approval checklist

  • This PR has an informative and human-readable title.
  • Changes are limited to a single goal - eschew scope creep!
  • If applicable, All future TODOs are captured in issues, which are referenced in the PR description.
  • The relevant issues PR resolves are linked preferably via closing keywords.
  • All relevant type-of-change labels have been added.
  • I have read and agree to the CONTRIBUTING.md document.
  • These code changes follow cisagov code standards.
  • All relevant repo and/or project documentation has been updated to reflect the changes in this PR.
  • Tests have been added and/or modified to cover the changes in this PR.
  • All new and existing tests pass.

βœ… Pre-merge Checklist

  • This PR has been smoke tested to ensure main is in a functional state when this PR is merged.
  • Squash all commits into one PR level commit using the Squash and merge button.

βœ… Post-merge Checklist

  • Delete the branch to clean up.
  • Close issues resolved by this PR if the closing keywords did not activate.

@rlxdev rlxdev self-assigned this Jul 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Convert the ScubaGoggles Orchestrator to a Class
1 participant