-
Notifications
You must be signed in to change notification settings - Fork 2
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
Firmware Manager Upgrade Scheduler and Runner #108
base: develop
Are you sure you want to change the base?
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.
Looks great! I just had a couple of questions
services/addons/images/firmware_manager/upgrade_scheduler/upgrade_scheduler.py
Show resolved
Hide resolved
services/addons/tests/firmware_manager/upgrade_scheduler/test_upgrade_scheduler.py
Outdated
Show resolved
Hide resolved
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.
These changes look good, but I am running into the same error that Marc is with the unit tests.
services/addons/tests/firmware_manager/upgrade_scheduler/test_upgrade_scheduler.py
Outdated
Show resolved
Hide resolved
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.
This all looks good to me now and unit tests are working correctly!
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.
Looks good & the unit tests pass!
… to address the file check addition to gcs_download function
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.
@drewjj I made some updates to allow for the OBU OTA server to work with these changes. Everything else looks really cool! I like the scaling changes.
PR Details
Description
This pull request reworks the Firmware Manager service into two services: the Upgrade Scheduler and Upgrade Runner.
The Upgrade Scheduler performs the same functions that the old firmware_manager.py script performed: starting firmware upgrades, managing the upgrade queue, and modifying the PostgreSQL database. The Upgrade Runner now is a separate service that simply runs the firmware upgrade scripts. This allows for us to scale out the upgrades across multiple pods in K8s if needed for better parallel process handling.
How Has This Been Tested?
Locally and in CDOT GKE dev.
Types of changes
Checklist: