Adds more integration tests - #533
Open
claudiubelu wants to merge 4 commits into
Open
claudiubelu wants to merge 4 commits into
claudiubelu wants to merge 4 commits into
Conversation
claudiubelu
force-pushed
the
coveragability-increasability
branch
from
September 25, 2026 08:08
cd3c67b to
2c9c27a
Compare
Exercises PowerOnMinionMachineTask / PowerOffMinionMachineTask and _set_minion_machine_power_status. These were previously uncovered since existing pool tests never scale a pool beyond its minimum size. The new tests configures pools with the "poweroff" retention strategy and a tiny idle time, then runs two separate transfers concurrently. The second execution allocates a new minion, scaling the pool beyond its minimum. Once both minions go idle, refresh_minion_pool powers the excess one off, then re-running both transfers concurrently reallocates and powers it back on before reuse. _write_systemd will now also enable the systemd unit, so the given service will actually start on reboot (e.g.: minion pool machine reused after being powered off).
Mirrors MinionPoolPowerCycleTransferTest but with the default "delete" retention strategy: once the pool's excess machine (beyond its minimum) goes idle, refreshing the pool deletes it instead of powering it off. As with the power-cycle tests, two separate transfers are executed concurrently to force the pool to allocate a second machine.
_init_pools_refresh_cron_jobs runs once, when a minion manager service endpoint is constructed, to re-register periodic refresh jobs for any pools that were already ALLOCATED (e.g.: after a service restart). Adds a test that asserts that cron jobs are registered as expected.
The integration test test_execution_auto_deploy did have auto_deploy=True, but it never actually waited the deployment to complete. When auto_deploy is True, deployer_manager is supposed to kick off the deployment automatically after the transfer completes. Adds test_execution_auto_deploy_transfer_failure test, which injects a failure into the deployer's transfer execution and waits for the deployment to be moved to the ERROR state.
claudiubelu
force-pushed
the
coveragability-increasability
branch
from
September 25, 2026 14:20
2c9c27a to
f8d57a4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds coverage for minion pool power cycling, exercising
PowerOnMinionMachineTask/PowerOffMinionMachineTaskand_set_minion_machine_power_status. These were previously uncovered since existing pool tests never scale a pool beyond its minimum size.Adds new tests configures pools with the "poweroff" retention strategy and a tiny idle time, then runs two separate transfers concurrently. The second execution allocates a new minion, scaling the pool beyond its minimum. Once both minions go idle,
refresh_minion_poolpowers the excess one off, then re-running both transfers concurrently reallocates and powers it back onbefore reuse.
Adds coverage for minion pool machine deletion on refresh, mirroring the minion pool power cycle tests but with the default "delete" retention strategy: once the pool's excess machine (beyond its minimum) goes idle, refreshing the pool deletes it instead of powering it off.
Adds coverage for minion pool refresh cron startup recovery:
_init_pools_refresh_cron_jobsruns once, when a minion manager service endpoint is constructed, to re-register periodic refresh jobs for any pools that were already ALLOCATED (e.g.: after a service restart).Adds coverage for the auto-deploy deployer handoff. The integration test
test_execution_auto_deploydid haveauto_deploy=True, but it never actually waited the deployment to complete. Whenauto_deployis True,deployer_manageris supposed to kick off the deployment automatically after the transfer completes.Adds
test_execution_auto_deploy_transfer_failure test, which injects a failure into the deployer's transfer execution and waits for the deployment to be moved to theERRORstate.