From d36920f40dae8bb0cda7f4c14fc32fe30ea7fe0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Rodr=C3=ADguez?= Date: Wed, 4 Mar 2020 17:01:37 +0100 Subject: Restore sudo configuration after sudo specs --- Rakefile | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Rakefile b/Rakefile index 814a23492c..4a17296ee7 100644 --- a/Rakefile +++ b/Rakefile @@ -57,15 +57,18 @@ namespace :spec do desc "Run the spec suite with the sudo tests" task :sudo => %w[set_sudo] do require "open3" + output, status = Open3.capture2e("sudo", "cp", "/etc/sudoers", "tmp/old_sudoers") + raise "Couldn't read sudoers file: #{output}" unless status.success? - output, status = Open3.capture2e("sudo sed -i '/secure_path/d' /etc/sudoers") - raise "Couldn't configure sudo to preserve path: #{output}" unless status.success? + begin + output, status = Open3.capture2e("sudo sed -i '/secure_path/d' /etc/sudoers") + raise "Couldn't configure sudo to preserve path: #{output}" unless status.success? - raise "Couldn't configure sudo correctly to preserve path" unless `ruby -v` == `sudo -E ruby -v` + raise "Couldn't configure sudo correctly to preserve path" unless `ruby -v` == `sudo -E ruby -v` - begin sh("sudo -E bin/rspec") ensure + system("sudo", "cp", "tmp/old_sudoers", "/etc/sudoers") system("sudo", "chown", "-R", ENV["USER"], "tmp") end end -- cgit v1.2.1