Skip to content

Commit 7c1302a

Browse files
authored
Merge pull request #21790 from jrafanie/fix_fallout_from_deleting_failed_deployments
Fix fallout from deleting failed deployments
2 parents b601dd7 + c2b3d84 commit 7c1302a

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

app/models/miq_server/worker_management/kubernetes.rb

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,13 @@ def sync_deployment_settings
5252

5353
if deployment_resource_constraints_changed?(worker)
5454
_log.info("Constraints changed, patching deployment: [#{worker.worker_deployment_name}]")
55-
worker.patch_deployment
55+
56+
begin
57+
worker.patch_deployment
58+
rescue => err
59+
_log.warn("Failure patching deployment: [#{worker.worker_deployment_name}] for worker: id: [#{worker.id}], system_uid: [#{worker.system_uid}]. Error: [#{err}]... skipping")
60+
next
61+
end
5662
end
5763
checked_deployments << worker.worker_deployment_name
5864
end

spec/models/miq_server/worker_management/kubernetes_spec.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,15 @@
351351
expect(worker3).to receive(:patch_deployment)
352352
server.worker_manager.sync_deployment_settings
353353
end
354+
355+
it "skips worker classes missing their deployment" do
356+
allow(server.worker_manager).to receive(:miq_workers).and_return([worker1, worker3])
357+
allow(server.worker_manager).to receive(:deployment_resource_constraints_changed?).with(worker1).and_return(true)
358+
allow(server.worker_manager).to receive(:deployment_resource_constraints_changed?).with(worker3).and_return(true)
359+
allow(worker1).to receive(:patch_deployment).and_raise(StandardError.new("AHHHHHH!"))
360+
expect(worker3).to receive(:patch_deployment)
361+
server.worker_manager.sync_deployment_settings
362+
end
354363
end
355364

356365
context "deployment_resource_constraints_changed?" do

0 commit comments

Comments
 (0)