8fd207bdf2
We observed errant behavior in the configuration covered by test_reconfigure_window_shrink in production when a reconfiguration shrunk the active window to less than the current value when jobs had already completed. Correct the underlying issue by removing the nodeset associated with a build from the buildset when the reconfiguration routine cancels it. Then, if we later launch the same job for some reason, we will obtain a new nodeset. If the build is running at the time it's canceled, we will still need the scheduler to return the nodeset to nodepool. Since it currently relies on the value in the buildset to find the nodeset, attach the nodeset to the build directly, so that even if we have removed the nodeset from the buildset, the scheduler will still have a pointer to the nodeset when the build completes. Having said all that, we really don't want to waste resources by shrinking the window on reconfiguration. A future change is likely to correct that and very likely invalidate the test just added. The only other time a build is likely to be canceled during reconfiguration yet used again later is if a job is removed, then added back to a project while changes are in the queue. So that we continue to have a test which covers this case, add a second test based on that scenario. Both of these tests fail without the included fix. Change-Id: If61b34e0f1464cb69d9d0b9053e05f1af996a67b
42 lines
629 B
YAML
42 lines
629 B
YAML
- pipeline:
|
|
name: gate
|
|
manager: dependent
|
|
trigger:
|
|
gerrit:
|
|
- event: comment-added
|
|
approval:
|
|
- Approved: 1
|
|
start:
|
|
gerrit:
|
|
Verified: 0
|
|
success:
|
|
gerrit:
|
|
Verified: 2
|
|
submit: true
|
|
failure:
|
|
gerrit:
|
|
Verified: -2
|
|
|
|
- job:
|
|
name: base
|
|
parent: null
|
|
nodeset:
|
|
nodes:
|
|
- label: ubuntu-xenial
|
|
name: controller
|
|
|
|
- job:
|
|
name: job1
|
|
run: playbooks/job1.yaml
|
|
|
|
- job:
|
|
name: job2
|
|
run: playbooks/job2.yaml
|
|
|
|
- project:
|
|
name: org/project
|
|
gate:
|
|
jobs:
|
|
- job1
|
|
- job2
|