summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLamont Granquist <lamont@scriptkiddie.org>2021-12-17 21:33:17 -0800
committerLamont Granquist <lamont@scriptkiddie.org>2021-12-17 21:33:17 -0800
commit98dd62ea32f0d34c64180e558fa85de5fc461e38 (patch)
treeaa6dfe8368874161640d86ce6d4f511eec513c67
parent89ed11d32118aac97e95e1f295ddc8071325636b (diff)
downloadchef-98dd62ea32f0d34c64180e558fa85de5fc461e38.tar.gz
Bounce the yum helper a few more times during the run
Really shouldn't but it cleans up a file descriptor leak on RHEL6 so that we can ship. Signed-off-by: Lamont Granquist <lamont@scriptkiddie.org>
-rw-r--r--spec/functional/resource/yum_package_spec.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/spec/functional/resource/yum_package_spec.rb b/spec/functional/resource/yum_package_spec.rb
index 7c5fc28fdf..5a9dbd44bc 100644
--- a/spec/functional/resource/yum_package_spec.rb
+++ b/spec/functional/resource/yum_package_spec.rb
@@ -43,10 +43,16 @@ describe Chef::Resource::YumPackage, :requires_root, external: exclude_test do
expect(shell_out("rpm -q --queryformat '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n' chef_rpm").stdout.chomp).to match(version)
end
- before(:all) do
+ before(:suite) do
shell_out!("yum -y install yum-utils")
end
+ # XXX: this is necessary for RHEL6 due to a file descriptor leak so we need to bounce the
+ # python helper periodically before every top level context to get more FDs.
+ before(:all) do
+ Chef::Provider::Package::Yum::PythonHelper.instance.restart
+ end
+
before(:each) do
# force errors to fail and not retry
ENV["YUM_HELPER_NO_RETRIES"] = "true"