From 134caf9d0b38e324bb4ff3408b219c55c04f0d5b Mon Sep 17 00:00:00 2001 From: Christopher Horrell Date: Wed, 27 May 2026 10:11:51 -0400 Subject: [PATCH] fix: suppress specinfra Docker finalizer warnings Unregister specinfra's backend finalizer in delete_image before manually cleaning up containers. Without this, the finalizer fires at process exit and tries to stop/delete already-removed containers, producing "warning: Exception in finalizer" noise in CI output. Co-Authored-By: Claude Sonnet 4.6 --- spec/spec_helper.rb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index cc6eb4b..a94442b 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -21,6 +21,15 @@ def delete_image puts "Deleting image..." + # Remove specinfra's Docker backend finalizer before we clean up containers. + # Without this, the finalizer fires at process exit and tries to stop/delete + # containers we've already removed here, producing "Exception in finalizer" warnings. + begin + ObjectSpace.undefine_finalizer(Specinfra.backend) + rescue => e + puts "Warning: Could not undefine specinfra finalizer: #{e.message}" + end + # Stop and remove only containers created from this image begin Docker::Container.all(:all => true).each do |container|