In an autoscaling fleet, if there are no more jobs for the fleet, after a few minutes , the auto-scaling fleet should scale down and shut down the worker instances in the fleet. The instance is shut down by the worker agent (in the case that the worker agent is allowed to shut down the instance, with the allow_shutdown option specified in the install)
We should verify that the worker agent is able and does shut down the instance in the case that there are no more jobs available for the fleet.
What was the solution? (How)
Add a test that verifies this functionality. The test submits a job to the queue associated with the autoscaling fleet, and boots up an EC2 instance with the worker agent installed. Then after the job finished, we verify that after around 5 minutes, the instance does indeed get shut down by the worker agent as there are no more jobs available for the fleet.
What is the impact of this change?
Preventing regressions in the worker agent code that would lead to the instance shut down when scaling down a fleet to not work as expected.
How was this change tested?
Linux
source .e2e_linux_infra.sh
hatch run e2e-test
Windows
source .e2e_windows_infra.sh
hatch run e2e-test
Was this change documented?
No
Is this a breaking change?
No
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
What was the problem/requirement? (What/Why)
In an autoscaling fleet, if there are no more jobs for the fleet, after a few minutes , the auto-scaling fleet should scale down and shut down the worker instances in the fleet. The instance is shut down by the worker agent (in the case that the worker agent is allowed to shut down the instance, with the
allow_shutdown
option specified in the install)We should verify that the worker agent is able and does shut down the instance in the case that there are no more jobs available for the fleet.
What was the solution? (How)
Add a test that verifies this functionality. The test submits a job to the queue associated with the autoscaling fleet, and boots up an EC2 instance with the worker agent installed. Then after the job finished, we verify that after around 5 minutes, the instance does indeed get shut down by the worker agent as there are no more jobs available for the fleet.
What is the impact of this change?
Preventing regressions in the worker agent code that would lead to the instance shut down when scaling down a fleet to not work as expected.
How was this change tested?
Linux
source .e2e_linux_infra.sh hatch run e2e-test
Windows
source .e2e_windows_infra.sh hatch run e2e-test
Was this change documented?
No
Is this a breaking change?
No
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.