From 6c2a7c487b8dac2a0c27f3ac36621f3f0f8b059f05c9bc46db1bf9c3c815fd90 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 13 May 2020 08:57:29 +0000 Subject: [PATCH 1/2] Accepting request 803169 from home:dancermak:branches:Virtualization:vagrant New upstream release 2.2.9 OBS-URL: https://build.opensuse.org/request/show/803169 OBS-URL: https://build.opensuse.org/package/show/Virtualization:vagrant/vagrant?expand=0&rev=42 --- ...rant-silence-warning-about-installer.patch | 10 +- 0002-Use-a-private-temporary-dir.patch | 10 +- ...on-t-wait-for-shutdown-h-now-to-fini.patch | 31 ----- ...s-don-t-abuse-require_relative.patch.patch | 8 +- ...-boo-1044087-added-by-robert.muntean.patch | 6 +- ...m.patch => 0005-do-not-depend-on-wdm.patch | 16 +-- ...ative-paths-in-docker-plugin-to-make.patch | 6 +- ...on-t-abuse-relative-paths-in-plugins.patch | 6 +- ...sts.patch => 0008-Skip-failing-tests.patch | 12 +- ...=> 0009-Disable-Subprocess-unit-test.patch | 6 +- ...x-unit-tests-for-GuestLinux-Cap-Halt.patch | 41 ------ 0010-Bump-version-of-net-ssh-to-6.0.patch | 25 ++++ ...-dependencies-if-vagrant-spec-is-not.patch | 30 ---- ...-out-guest-capabilities-instead-of-r.patch | 39 ++++++ 0013-Update-some-outdated-gem-versions.patch | 36 ----- README.SUSE | 18 ++- macros.vagrant | 7 +- vagrant-2.2.7.tar.gz | 3 - vagrant-2.2.9.tar.gz | 3 + vagrant.changes | 130 ++++++++++++++++++ vagrant.spec | 112 ++++++++------- vagrant_post.rb | 2 +- vagrant_transfiletriggerin.rb | 2 +- vagrant_transfiletriggerun.rb | 2 +- 24 files changed, 315 insertions(+), 246 deletions(-) delete mode 100644 0003-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch rename 0004-plugins-don-t-abuse-require_relative.patch.patch => 0003-plugins-don-t-abuse-require_relative.patch.patch (97%) rename 0005-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch => 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch (91%) rename 0006-do-not-depend-on-wdm.patch => 0005-do-not-depend-on-wdm.patch (57%) rename 0007-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch => 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch (83%) rename 0008-Don-t-abuse-relative-paths-in-plugins.patch => 0007-Don-t-abuse-relative-paths-in-plugins.patch (94%) rename 0010-Skip-failing-tests.patch => 0008-Skip-failing-tests.patch (79%) rename 0012-Disable-Subprocess-unit-test.patch => 0009-Disable-Subprocess-unit-test.patch (90%) delete mode 100644 0009-Fix-unit-tests-for-GuestLinux-Cap-Halt.patch create mode 100644 0010-Bump-version-of-net-ssh-to-6.0.patch delete mode 100644 0011-Do-not-list-load-dependencies-if-vagrant-spec-is-not.patch create mode 100644 0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch delete mode 100644 0013-Update-some-outdated-gem-versions.patch delete mode 100644 vagrant-2.2.7.tar.gz create mode 100644 vagrant-2.2.9.tar.gz diff --git a/0001-bin-vagrant-silence-warning-about-installer.patch b/0001-bin-vagrant-silence-warning-about-installer.patch index f1b7277..57bf118 100644 --- a/0001-bin-vagrant-silence-warning-about-installer.patch +++ b/0001-bin-vagrant-silence-warning-about-installer.patch @@ -1,7 +1,7 @@ -From 2aceecad34427d322bb011e5964a3c7d5818c3ae Mon Sep 17 00:00:00 2001 +From f80fd64dacd27ad51f459f12301c3c16bed76554 Mon Sep 17 00:00:00 2001 From: Antonio Terceiro Date: Sat, 11 Oct 2014 16:54:58 -0300 -Subject: [PATCH 01/13] bin/vagrant: silence warning about installer +Subject: [PATCH 01/11] bin/vagrant: silence warning about installer Signed-off-by: Johannes Kastl --- @@ -9,10 +9,10 @@ Signed-off-by: Johannes Kastl 1 file changed, 16 deletions(-) diff --git a/bin/vagrant b/bin/vagrant -index 0e6abdcef..9b9233397 100755 +index ba7e40076..8272e839e 100755 --- a/bin/vagrant +++ b/bin/vagrant -@@ -144,22 +144,6 @@ begin +@@ -167,22 +167,6 @@ begin logger.debug("Creating Vagrant environment") env = Vagrant::Environment.new(opts) @@ -36,5 +36,5 @@ index 0e6abdcef..9b9233397 100755 # # Unset - Disables experimental features -- -2.25.0 +2.26.2 diff --git a/0002-Use-a-private-temporary-dir.patch b/0002-Use-a-private-temporary-dir.patch index abc9aad..c003134 100644 --- a/0002-Use-a-private-temporary-dir.patch +++ b/0002-Use-a-private-temporary-dir.patch @@ -1,7 +1,7 @@ -From 3f9506dee9cfe960b593ba9d28786fe3b5164643 Mon Sep 17 00:00:00 2001 +From 51acfce0e08b62dc559aa2432892134d0e6d51bc Mon Sep 17 00:00:00 2001 From: Antonio Terceiro Date: Wed, 22 Oct 2014 09:40:14 -0200 -Subject: [PATCH 02/13] Use a private temporary dir +Subject: [PATCH 02/11] Use a private temporary dir Without this vagrant will clutter $TMPDIR with dozens of even hundreds of temporary files (~4 per vagrant invocation). @@ -36,10 +36,10 @@ index 2f12775f5..af35043ee 100644 url = @metadata_url diff --git a/lib/vagrant/util.rb b/lib/vagrant/util.rb -index 32babe50d..217469e85 100644 +index f8be2baf0..5776a56dd 100644 --- a/lib/vagrant/util.rb +++ b/lib/vagrant/util.rb -@@ -15,6 +15,8 @@ module Vagrant +@@ -16,6 +16,8 @@ module Vagrant autoload :SafeExec, 'vagrant/util/safe_exec' autoload :SilenceWarnings, 'vagrant/util/silence_warnings' autoload :StackedProcRunner, 'vagrant/util/stacked_proc_runner' @@ -94,5 +94,5 @@ index 000000000..0cbbb53ac + FileUtils.rm_rf(Vagrant::Util::Tempfile.private_tmpdir) +end -- -2.25.0 +2.26.2 diff --git a/0003-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch b/0003-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch deleted file mode 100644 index ac35cb0..0000000 --- a/0003-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 86b44992811600404c8d967a6e74910396ff874e Mon Sep 17 00:00:00 2001 -From: Antonio Terceiro -Date: Tue, 3 Feb 2015 10:35:17 -0200 -Subject: [PATCH 03/13] linux/cap/halt: don't wait for `shutdown -h now` to - finish - -When running a Debian 8 lxc guest (with the vagrant-lxc plugin), which -has systemd as init system, `vagrant halt` will hang waiting for -`shutdown -h now` to return. - -Signed-off-by: Johannes Kastl ---- - plugins/guests/linux/cap/halt.rb | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/plugins/guests/linux/cap/halt.rb b/plugins/guests/linux/cap/halt.rb -index 60dc5dde4..657636eaf 100644 ---- a/plugins/guests/linux/cap/halt.rb -+++ b/plugins/guests/linux/cap/halt.rb -@@ -4,7 +4,7 @@ module VagrantPlugins - class Halt - def self.halt(machine) - begin -- machine.communicate.sudo("shutdown -h now") -+ machine.communicate.sudo("shutdown -h now &") - rescue IOError, Vagrant::Errors::SSHDisconnected - # Do nothing, because it probably means the machine shut down - # and SSH connection was lost. --- -2.25.0 - diff --git a/0004-plugins-don-t-abuse-require_relative.patch.patch b/0003-plugins-don-t-abuse-require_relative.patch.patch similarity index 97% rename from 0004-plugins-don-t-abuse-require_relative.patch.patch rename to 0003-plugins-don-t-abuse-require_relative.patch.patch index a9bc7fd..375d0e7 100644 --- a/0004-plugins-don-t-abuse-require_relative.patch.patch +++ b/0003-plugins-don-t-abuse-require_relative.patch.patch @@ -1,7 +1,7 @@ -From e589e6be6b7697717fcae15428e443b9be0fd629 Mon Sep 17 00:00:00 2001 +From b8e4cea474ed366499515f7eb4b33f3e80028680 Mon Sep 17 00:00:00 2001 From: Johannes Kastl Date: Wed, 17 May 2017 09:09:57 +0200 -Subject: [PATCH 04/13] plugins-don-t-abuse-require_relative.patch +Subject: [PATCH 03/11] plugins-don-t-abuse-require_relative.patch Signed-off-by: Johannes Kastl --- @@ -32,7 +32,7 @@ index 0ef71d55f..df0bd0f8f 100644 module VagrantPlugins module GuestArch diff --git a/plugins/guests/debian/cap/configure_networks.rb b/plugins/guests/debian/cap/configure_networks.rb -index 23b7bbcdf..07aa91289 100644 +index dfec32ccb..6b56e280a 100644 --- a/plugins/guests/debian/cap/configure_networks.rb +++ b/plugins/guests/debian/cap/configure_networks.rb @@ -1,6 +1,6 @@ @@ -154,5 +154,5 @@ index 2dd140230..e6dd96f08 100644 module VagrantPlugins module GuestSUSE -- -2.25.0 +2.26.2 diff --git a/0005-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch b/0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch similarity index 91% rename from 0005-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch rename to 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch index 1e83710..e90f096 100644 --- a/0005-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch +++ b/0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch @@ -1,7 +1,7 @@ -From d6b0b98c0eabc78da7c97839630235fa9ed32075 Mon Sep 17 00:00:00 2001 +From fe235bc5fa4f124422beac2d9343df004ae75d22 Mon Sep 17 00:00:00 2001 From: Johannes Kastl Date: Fri, 16 Nov 2018 21:12:43 +0100 -Subject: [PATCH 05/13] fix vbox package boo#1044087, added by +Subject: [PATCH 04/11] fix vbox package boo#1044087, added by robert.munteanu@gmail.com on Sun Aug 13 19:07:06 UTC 2017 Signed-off-by: Johannes Kastl @@ -33,5 +33,5 @@ index a0baf516f..867fe2bf8 100644 module VagrantPlugins module ProviderVirtualBox -- -2.25.0 +2.26.2 diff --git a/0006-do-not-depend-on-wdm.patch b/0005-do-not-depend-on-wdm.patch similarity index 57% rename from 0006-do-not-depend-on-wdm.patch rename to 0005-do-not-depend-on-wdm.patch index f6885ef..87327da 100644 --- a/0006-do-not-depend-on-wdm.patch +++ b/0005-do-not-depend-on-wdm.patch @@ -1,7 +1,7 @@ -From 486c955ffe349c52ab5a4cfd831b09df83de88bf Mon Sep 17 00:00:00 2001 +From e2cc039d85b5131d52bb30755431e202ee92aa63 Mon Sep 17 00:00:00 2001 From: Johannes Kastl Date: Mon, 4 Jun 2018 09:18:23 +0200 -Subject: [PATCH 06/13] do not depend on wdm +Subject: [PATCH 05/11] do not depend on wdm Signed-off-by: Johannes Kastl --- @@ -9,17 +9,17 @@ Signed-off-by: Johannes Kastl 1 file changed, 1 deletion(-) diff --git a/vagrant.gemspec b/vagrant.gemspec -index baae3f486..fb2925da5 100644 +index 8667a36d4..49fdf2e8e 100644 --- a/vagrant.gemspec +++ b/vagrant.gemspec @@ -29,7 +29,6 @@ Gem::Specification.new do |s| s.add_dependency "rb-kqueue", "~> 0.2.0" s.add_dependency "rest-client", ">= 1.6.0", "< 3.0" - s.add_dependency "rubyzip", "~> 1.3" + s.add_dependency "rubyzip", "~> 2.0" - s.add_dependency "wdm", "~> 0.1.0" - s.add_dependency "winrm", "~> 2.1" - s.add_dependency "winrm-fs", "~> 1.0" - s.add_dependency "winrm-elevated", "~> 1.1" + s.add_dependency "winrm", ">= 2.3.4", "< 3.0" + s.add_dependency "winrm-fs", ">= 1.3.4", "< 2.0" + s.add_dependency "winrm-elevated", ">= 1.2.1", "< 2.0" -- -2.25.0 +2.26.2 diff --git a/0007-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch b/0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch similarity index 83% rename from 0007-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch rename to 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch index 828f7c7..30236cc 100644 --- a/0007-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch +++ b/0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch @@ -1,7 +1,7 @@ -From e4c16b7f40c37f08f431f84ac8f6994e5dfbd771 Mon Sep 17 00:00:00 2001 +From eca8f299f0b4f5d913f714500cbaa7515e85cc70 Mon Sep 17 00:00:00 2001 From: Johannes Kastl Date: Fri, 16 Nov 2018 21:14:46 +0100 -Subject: [PATCH 07/13] do not abuse relative paths in docker plugin to make +Subject: [PATCH 06/11] do not abuse relative paths in docker plugin to make docker work, added by tmkn@tmkn.uk on Thu Oct 26 19:42:46 UTC 2017 Signed-off-by: Johannes Kastl @@ -22,5 +22,5 @@ index 07c4e5333..e8142df8b 100644 module VagrantPlugins module DockerProvider -- -2.25.0 +2.26.2 diff --git a/0008-Don-t-abuse-relative-paths-in-plugins.patch b/0007-Don-t-abuse-relative-paths-in-plugins.patch similarity index 94% rename from 0008-Don-t-abuse-relative-paths-in-plugins.patch rename to 0007-Don-t-abuse-relative-paths-in-plugins.patch index a6a3b6b..c827a9f 100644 --- a/0008-Don-t-abuse-relative-paths-in-plugins.patch +++ b/0007-Don-t-abuse-relative-paths-in-plugins.patch @@ -1,7 +1,7 @@ -From 977541aad0f8711d080938c491f3567819c02ab2 Mon Sep 17 00:00:00 2001 +From 0927b55a502c8c4103c8dbe3176ef99852f1d222 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= Date: Fri, 11 Jan 2019 12:32:28 +0100 -Subject: [PATCH 08/13] Don't abuse relative paths in plugins +Subject: [PATCH 07/11] Don't abuse relative paths in plugins MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -64,5 +64,5 @@ index 7bc8ceca0..e938305e7 100644 require_relative "../installer" -- -2.25.0 +2.26.2 diff --git a/0010-Skip-failing-tests.patch b/0008-Skip-failing-tests.patch similarity index 79% rename from 0010-Skip-failing-tests.patch rename to 0008-Skip-failing-tests.patch index 7e064e8..3da8136 100644 --- a/0010-Skip-failing-tests.patch +++ b/0008-Skip-failing-tests.patch @@ -1,17 +1,17 @@ -From af5720555a656230e30333d592c84de50737a2bc Mon Sep 17 00:00:00 2001 +From 7181dea528cfa24a9952fb5a5f3297e0b2b1e53c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= Date: Mon, 1 Apr 2019 17:28:31 +0200 -Subject: [PATCH 10/13] Skip failing tests +Subject: [PATCH 08/11] Skip failing tests --- test/unit/bin/vagrant_test.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/unit/bin/vagrant_test.rb b/test/unit/bin/vagrant_test.rb -index 08edcb20e..a6bef731d 100644 +index bc11309aa..4d329151a 100644 --- a/test/unit/bin/vagrant_test.rb +++ b/test/unit/bin/vagrant_test.rb -@@ -104,7 +104,7 @@ describe "vagrant bin" do +@@ -134,7 +134,7 @@ describe "vagrant bin" do context "when vagrant is not very quiet" do before { expect(Vagrant).to receive(:very_quiet?).and_return(false) } @@ -20,7 +20,7 @@ index 08edcb20e..a6bef731d 100644 expect(env.ui).to receive(:warn).with(/#{warning}/, any_args) end end -@@ -112,7 +112,7 @@ describe "vagrant bin" do +@@ -142,7 +142,7 @@ describe "vagrant bin" do context "when vagrant is very quiet" do before { expect(Vagrant).to receive(:very_quiet?).and_return(true) } @@ -30,5 +30,5 @@ index 08edcb20e..a6bef731d 100644 end end -- -2.25.0 +2.26.2 diff --git a/0012-Disable-Subprocess-unit-test.patch b/0009-Disable-Subprocess-unit-test.patch similarity index 90% rename from 0012-Disable-Subprocess-unit-test.patch rename to 0009-Disable-Subprocess-unit-test.patch index 368f465..bf9157a 100644 --- a/0012-Disable-Subprocess-unit-test.patch +++ b/0009-Disable-Subprocess-unit-test.patch @@ -1,7 +1,7 @@ -From 5625949476713ea00facfc87f8ce4c42e751f216 Mon Sep 17 00:00:00 2001 +From 94768cd2af7eecbcf01ef1efa66469f77bf6fbec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= Date: Wed, 28 Aug 2019 13:39:58 +0200 -Subject: [PATCH 12/13] Disable Subprocess unit test +Subject: [PATCH 09/11] Disable Subprocess unit test This unit test is *very* flaky on OBS' workers and causes random build failures. These are probably caused by worker being under high load and then @@ -33,5 +33,5 @@ index 81da0e635..a2a2270a0 100644 sleep(0.1) expect(sp.stop).to be(true) -- -2.25.0 +2.26.2 diff --git a/0009-Fix-unit-tests-for-GuestLinux-Cap-Halt.patch b/0009-Fix-unit-tests-for-GuestLinux-Cap-Halt.patch deleted file mode 100644 index d89f795..0000000 --- a/0009-Fix-unit-tests-for-GuestLinux-Cap-Halt.patch +++ /dev/null @@ -1,41 +0,0 @@ -From c388ca93ac0254cb2e635558e90e57a9cd93cb69 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= -Date: Thu, 14 Mar 2019 00:25:05 +0100 -Subject: [PATCH 09/13] Fix unit tests for GuestLinux::Cap::Halt - -This test fails since we patch `shutdown -h now` to be `shutdown -h now &` -instead. ---- - test/unit/plugins/guests/linux/cap/halt_test.rb | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/test/unit/plugins/guests/linux/cap/halt_test.rb b/test/unit/plugins/guests/linux/cap/halt_test.rb -index 81f682aa1..70d2603b9 100644 ---- a/test/unit/plugins/guests/linux/cap/halt_test.rb -+++ b/test/unit/plugins/guests/linux/cap/halt_test.rb -@@ -22,19 +22,19 @@ describe "VagrantPlugins::GuestLinux::Cap::Halt" do - let(:cap) { caps.get(:halt) } - - it "runs the shutdown command" do -- comm.expect_command("shutdown -h now") -+ comm.expect_command("shutdown -h now &") - cap.halt(machine) - end - - it "does not raise an IOError" do -- comm.stub_command("shutdown -h now", raise: IOError) -+ comm.stub_command("shutdown -h now &", raise: IOError) - expect { - cap.halt(machine) - }.to_not raise_error - end - - it "does not raise a SSHDisconnected" do -- comm.stub_command("shutdown -h now", raise: Vagrant::Errors::SSHDisconnected) -+ comm.stub_command("shutdown -h now &", raise: Vagrant::Errors::SSHDisconnected) - expect { - cap.halt(machine) - }.to_not raise_error --- -2.25.0 - diff --git a/0010-Bump-version-of-net-ssh-to-6.0.patch b/0010-Bump-version-of-net-ssh-to-6.0.patch new file mode 100644 index 0000000..5d10bc3 --- /dev/null +++ b/0010-Bump-version-of-net-ssh-to-6.0.patch @@ -0,0 +1,25 @@ +From ad290684e23ccb0cfd232983f72fc01affb77058 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= +Date: Mon, 11 May 2020 11:32:01 +0200 +Subject: [PATCH 10/11] Bump version of net-ssh to ~> 6.0 + +--- + vagrant.gemspec | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/vagrant.gemspec b/vagrant.gemspec +index 49fdf2e8e..36709b74b 100644 +--- a/vagrant.gemspec ++++ b/vagrant.gemspec +@@ -23,7 +23,7 @@ Gem::Specification.new do |s| + s.add_dependency "listen", "~> 3.1.5" + s.add_dependency "hashicorp-checkpoint", "~> 0.1.5" + s.add_dependency "log4r", "~> 1.1.9", "< 1.1.11" +- s.add_dependency "net-ssh", "~> 5.2.0" ++ s.add_dependency "net-ssh", "~> 6.0" + s.add_dependency "net-sftp", "~> 2.1" + s.add_dependency "net-scp", "~> 1.2.0" + s.add_dependency "rb-kqueue", "~> 0.2.0" +-- +2.26.2 + diff --git a/0011-Do-not-list-load-dependencies-if-vagrant-spec-is-not.patch b/0011-Do-not-list-load-dependencies-if-vagrant-spec-is-not.patch deleted file mode 100644 index f38f92d..0000000 --- a/0011-Do-not-list-load-dependencies-if-vagrant-spec-is-not.patch +++ /dev/null @@ -1,30 +0,0 @@ -From d8a6e1573ee0b845b851c760ceced71f250e9576 Mon Sep 17 00:00:00 2001 -From: Pavel Valena -Date: Mon, 1 Jul 2019 17:44:54 +0200 -Subject: [PATCH 11/13] Do not list / load dependencies if `vagrant` spec is - not loaded - -in `vagrant_internal_specs` as this fails, due to `find` returning `nil`. ---- - lib/vagrant/bundler.rb | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/lib/vagrant/bundler.rb b/lib/vagrant/bundler.rb -index 7ba48435f..c0fabdcea 100644 ---- a/lib/vagrant/bundler.rb -+++ b/lib/vagrant/bundler.rb -@@ -421,8 +421,9 @@ module Vagrant - def vagrant_internal_specs - # activate any dependencies up front so we can always - # pin them when resolving -- Gem::Specification.find { |s| s.name == "vagrant" && s.activated? }. -- runtime_dependencies.each { |d| gem d.name, *d.requirement.as_list } -+ if (vs = Gem::Specification.find { |s| s.name == "vagrant" && s.activated? }) -+ vs.runtime_dependencies.each { |d| gem d.name, *d.requirement.as_list } -+ end - # discover all the gems we have available - list = {} - directories = [Gem::Specification.default_specifications_dir] --- -2.25.0 - diff --git a/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch b/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch new file mode 100644 index 0000000..5c74b88 --- /dev/null +++ b/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch @@ -0,0 +1,39 @@ +From cb0fbcd3968efe6b46fcf15ca8ec6ef950b55dd0 Mon Sep 17 00:00:00 2001 +From: Brian Cain +Date: Mon, 11 May 2020 08:01:29 -0700 +Subject: [PATCH 11/11] Fixes #11606: Mock out guest capabilities instead of + running them + +This commit fixes a test that only fails on certain users machines where +Vagrant ends up trying to run real guest capabilities to test if the +docker provisioner raises an error if the provisioner install failed. It +fixes it by mocking out the expected return values for those +capabilities rather than relying on them actually running for this +specific unit test. + +(cherry picked from commit 3934a26c2974a1795f25db31e98300386a71881d) +--- + test/unit/plugins/provisioners/docker/installer_test.rb | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/test/unit/plugins/provisioners/docker/installer_test.rb b/test/unit/plugins/provisioners/docker/installer_test.rb +index c21654b63..e8cd8fb3f 100644 +--- a/test/unit/plugins/provisioners/docker/installer_test.rb ++++ b/test/unit/plugins/provisioners/docker/installer_test.rb +@@ -36,9 +36,10 @@ describe VagrantPlugins::DockerProvisioner::Installer do + end + + it "installs docker if not present" do +- expect(communicator).to receive(:test).with(/docker/, {:sudo=>true}).and_return(false).at_least(:twice) +- # Will execute sudo commands to install +- expect(communicator).to receive(:sudo).at_least(:once) ++ allow(machine).to receive_message_chain(:guest, :capability?).with(:docker_installed).and_return(true) ++ allow(machine).to receive_message_chain(:guest, :capability).with(:docker_install).and_return(false) ++ allow(machine).to receive_message_chain(:guest, :capability).with(:docker_installed).and_return(false) ++ + # Expect to raise error since we are mocking out the test for docker install to return false + expect {subject.ensure_installed()}.to raise_error(VagrantPlugins::DockerProvisioner::DockerError) + end +-- +2.26.2 + diff --git a/0013-Update-some-outdated-gem-versions.patch b/0013-Update-some-outdated-gem-versions.patch deleted file mode 100644 index b46a8cd..0000000 --- a/0013-Update-some-outdated-gem-versions.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 5d9ef14f8e93ec7c6af8372805d92fc69182099e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= -Date: Mon, 27 Jan 2020 15:01:16 +0100 -Subject: [PATCH 13/13] Update some outdated gem versions - ---- - vagrant.gemspec | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/vagrant.gemspec b/vagrant.gemspec -index fb2925da5..c76951d10 100644 ---- a/vagrant.gemspec -+++ b/vagrant.gemspec -@@ -19,16 +19,16 @@ Gem::Specification.new do |s| - s.add_dependency "childprocess", "~> 0.6.0" - s.add_dependency "ed25519", "~> 1.2.4" - s.add_dependency "erubis", "~> 2.7.0" -- s.add_dependency "i18n", "~> 1.1" -+ s.add_dependency "i18n", "~> 1.8" - s.add_dependency "listen", "~> 3.1.5" - s.add_dependency "hashicorp-checkpoint", "~> 0.1.5" - s.add_dependency "log4r", "~> 1.1.9", "< 1.1.11" -- s.add_dependency "net-ssh", "~> 5.1.0" -+ s.add_dependency "net-ssh", "~> 5.2.0" - s.add_dependency "net-sftp", "~> 2.1" - s.add_dependency "net-scp", "~> 1.2.0" - s.add_dependency "rb-kqueue", "~> 0.2.0" - s.add_dependency "rest-client", ">= 1.6.0", "< 3.0" -- s.add_dependency "rubyzip", "~> 1.3" -+ s.add_dependency "rubyzip", "~> 2.0" - s.add_dependency "winrm", "~> 2.1" - s.add_dependency "winrm-fs", "~> 1.0" - s.add_dependency "winrm-elevated", "~> 1.1" --- -2.25.0 - diff --git a/README.SUSE b/README.SUSE index 4fca34b..51ca61b 100644 --- a/README.SUSE +++ b/README.SUSE @@ -9,11 +9,16 @@ other then the ruby version with which vagrant was built. Furthermore, vagrant will _only_ recognize gems inside its own directory structure as plugins and not arbitrary rubygems. +Note that we *must* explicitly specify the macros `rb_build_versions` and +`rb_build_abi` (and cannot use macros here!). Usually we can simply use the +default ruby here, but in case vagrant is incompatible with the default ruby, we +must override this in each plugin. + An example specfile for a vagrant plugin looks like this: ``` spec -%global rb_build_versions %vagrant_rb_build_versions -%global rb_build_abi %vagrant_rb_build_abi -%global rb_default_ruby_suffix %vagrant_rb_default_ruby_suffix +%global rb_build_versions ruby26 +%global rb_build_abi ruby:2.6.0 +%global rb_ruby_suffix ruby2.6 Name: vagrant-MYPLUGIN Version: $VERSION @@ -30,9 +35,8 @@ BuildArch: noarch Url: $URL Source: $SRC Source1: gem2rpm.yml -Summary: Vagrant provider for libvirt -License: MIT -Group: Development/Languages/Ruby +Summary: $SUMMARY +License: $LICENSE %description $DESCRIPTION @@ -46,7 +50,7 @@ $DESCRIPTION %gem_build %install -%vagrant_plugin_install -n %{mod_full_name}/%{vagrant_plugin_name}-%{version}.gem +%vagrant_plugin_install %files %{vagrant_plugin_instdir} diff --git a/macros.vagrant b/macros.vagrant index decac24..c4595a1 100644 --- a/macros.vagrant +++ b/macros.vagrant @@ -12,6 +12,9 @@ %vagrant_plugin_conf %{vagrant_embedded_dir}/plugins.json +# specify the gem binary in case we are building with a non-default ruby version +%gem_binary %{_bindir}/gem.%{rb_ruby_suffix} + # Install gem into appropriate directory. # -n Overrides gem file name for installation. # -d Set installation directory. @@ -23,7 +26,7 @@ fi \ mkdir -p %{-d*}%{!?-d:%{buildroot}%{vagrant_plugin_dir}} \ \ CONFIGURE_ARGS="--with-cflags='%{optflags}' $CONFIGURE_ARGS" \\\ -gem install \\\ +%gem_binary install \\\ -V \\\ --local \\\ --no-user-install \\\ @@ -38,4 +41,4 @@ gem install \\\ %vagrant_rb_build_versions %{rb_build_versions} %vagrant_rb_build_abi %{rb_build_abi} -%vagrant_rb_default_ruby_suffix %{rb_default_ruby_suffix} +%vagrant_rb_ruby_suffix %{rb_ruby_suffix} diff --git a/vagrant-2.2.7.tar.gz b/vagrant-2.2.7.tar.gz deleted file mode 100644 index 668cbdf..0000000 --- a/vagrant-2.2.7.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a9229f6eba67dd51dfd6125dc578d1d0d724f2620f7d9a68cd46fa886df061fc -size 2173893 diff --git a/vagrant-2.2.9.tar.gz b/vagrant-2.2.9.tar.gz new file mode 100644 index 0000000..a38551a --- /dev/null +++ b/vagrant-2.2.9.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8e541a00285b0aa8e79aab0832c664f2c53ee4af40e382f1b5c452ae5647139 +size 2215868 diff --git a/vagrant.changes b/vagrant.changes index ec1f1f1..39529c7 100644 --- a/vagrant.changes +++ b/vagrant.changes @@ -1,3 +1,133 @@ +------------------------------------------------------------------- +Mon May 11 17:58:59 UTC 2020 - Dan Čermák + +- New upstream release 2.2.9 + + BUG FIXES: + + - core/bundler: Properly handle plugin install with available specification + [GH-11592] + - provisioners/docker: Fix CentOS docker install and start service + capabilities [GH-11581] + - provisioners/podman: Seperate RHEL install from CentOS install [GH-11584] + + Rebase patches: + * 0001-bin-vagrant-silence-warning-about-installer.patch + * 0002-Use-a-private-temporary-dir.patch + * 0003-plugins-don-t-abuse-require_relative.patch.patch + * 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch + * 0005-do-not-depend-on-wdm.patch + * 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch + * 0007-Don-t-abuse-relative-paths-in-plugins.patch + * 0008-Skip-failing-tests.patch + * 0009-Disable-Subprocess-unit-test.patch + + Add patch: + * 0010-Bump-version-of-net-ssh-to-6.0.patch + * 0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch + + - Fix various issues when building vagrant with a non-default ruby version + (e.g. gem implicitly defaulting to the default one) + - update README.SUSE + +------------------------------------------------------------------- +Thu May 7 12:52:02 UTC 2020 - Dan Čermák + +- New upstream release 2.2.8 + + FEATURES: + + - virtualbox/disks: Add ability to manage virtual disks for guests [GH-11349] + + IMPROVEMENTS: + + - bin/vagrant: Automatically include global options within commands [GH-11473] + - bin/vagrant: Suppress Ruby warnings when not running pre-release version + [GH-11446] + - communicator/ssh: Add support for configuring SSH connect timeout [GH-11533] + - core: Update childprocess gem [GH-11487] + - core: Add cli option `--no-tty` [GH-11414] + - core: Overhaul call stack modifications implementation for hooks and + triggers [GH-11455] + - core/bundler: Cache plugin solution sets to speed up startup times + [GH-11363] + - config/vm: Add`box_download_options` config to specify extra download + options for a box [GH-11560] + - guest/alpine: Add ansible provisioner guest support [GH-11411] + - guest/linux: Update systemd? check to use sudo [GH-11398] + - guest/linux: Use systemd if available to halt and reboot system [GH-11407] + - guests/linux: Mount smb folders with `mfsymlinks` option by default [GH-11503] + - guest/redhat: Add support for SMB [GH-11463] + - guest/windows: Rescue all regular exceptions during reboot wait [GH-11428] + - providers/docker: Support catching container name when using podman [GH-11356] + - provisioners/docker: Support Centos8 [GH-11462] + - provisioners/podman: Add Podman as a provisioner [GH-11472] + - provisioners/salt: Allow specifying python_version [GH-11436] + + BUG FIXES: + + - communicators/winssh: Fix issues with Windows SSH communicator [GH-11430] + - core/bundler: Activate vagrant specification when not active [GH-11445] + - core/bundler: Properly resolve sets when Vagrant is in prerelease [GH-11571] + - core/downloader: Always set `-q` flag as first option [GH-11366] + - core/hooks: Update dynamic action hook implementation to prevent looping + [GH-11427] + - core/synced_folders: Validate type option if set [GH-11359] + - guests/debian: Choose netplan renderer based on network configuration and + installed tools [GH-11498] + - host/darwin: Quote directories in /etc/exports [GH-11441] + - host/linux: Ensure `/etc/exports` does not contain duplicate records [GH-10591] + - host/windows: Check all interfaces for port conflict when host_ip: "0.0.0.0" + [GH-11454] + - providers/docker: Fix issue where Vagrant fails to remove image if it is in + use [GH-11355] + - providers/docker: Fix issue with getting correct docker image id from build + output [GH-11461] + - providers/hyperv: Prevent error when identity reference cannot be translated + [GH-11425] + - provider/hyperv: Use service id for manipulating vm integration services + [GH-11499] + - providers/virtualbox: Parse `list dhcpservers` output on VirtualBox 6.1 + [GH-11404] + - providers/virtualbox: Raise an error if guest IP ends in .1 [GH-11500] + - provisioners/shell: Ensure windows shell provisioners always get an + extension [GH-11517] + - util/io: Fix encoding conversion errors [GH-11571] + + Removed patches: + * 0003-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch + (dropped as it is an old fix from Debian and Vagrant will now use systemd to + shutdown, making this one obsolete) + * 0004-plugins-don-t-abuse-require_relative.patch.patch + (rebased as 0003-plugins-don-t-abuse-require_relative.patch.patch) + * 0005-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch + (rebased as 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch) + * 0006-do-not-depend-on-wdm.patch + (rebased as 0005-do-not-depend-on-wdm.patch) + * 0007-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch + (rebased as 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch) + * 0008-Don-t-abuse-relative-paths-in-plugins.patch + (rebased as 0007-Don-t-abuse-relative-paths-in-plugins.patch) + * 0009-Fix-unit-tests-for-GuestLinux-Cap-Halt.patch + (dropped as it is a test fix for Patch3) + * 0010-Skip-failing-tests.patch + (rebased as 0008-Skip-failing-tests.patch) + * 0011-Do-not-list-load-dependencies-if-vagrant-spec-is-not.patch + (merged upstream) + * 0012-Disable-Subprocess-unit-test.patch + (rebased as 0009-Disable-Subprocess-unit-test.patch) + * 0013-Update-some-outdated-gem-versions.patch + (merged upstream) + + Added patches: + * 0003-plugins-don-t-abuse-require_relative.patch.patch + * 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch + * 0005-do-not-depend-on-wdm.patch + * 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch + * 0007-Don-t-abuse-relative-paths-in-plugins.patch + * 0008-Skip-failing-tests.patch + * 0009-Disable-Subprocess-unit-test.patch + ------------------------------------------------------------------- Fri Feb 14 12:16:58 UTC 2020 - Dan Čermák diff --git a/vagrant.spec b/vagrant.spec index 3b433dc..d219887 100644 --- a/vagrant.spec +++ b/vagrant.spec @@ -1,6 +1,7 @@ # # spec file for package vagrant # +# Copyright (c) 2020 SUSE LLC # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2012 Laurent Bigonville , License GPL-2.0+ # @@ -19,14 +20,11 @@ %global mod_name vagrant %global mod_full_name %{mod_name}-%{version} -# -# Use -# %global vim_data_dir %{_datadir}/vim/site/plugin/ Name: vagrant -Version: 2.2.7 +Version: 2.2.9 Release: 0 Summary: Tool for building and distributing virtualized development environments License: MIT @@ -50,30 +48,37 @@ Recommends: vagrant-libvirt # Patch1: 0001-bin-vagrant-silence-warning-about-installer.patch Patch2: 0002-Use-a-private-temporary-dir.patch -Patch3: 0003-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch -Patch4: 0004-plugins-don-t-abuse-require_relative.patch.patch -Patch5: 0005-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch -Patch6: 0006-do-not-depend-on-wdm.patch -Patch7: 0007-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch -Patch8: 0008-Don-t-abuse-relative-paths-in-plugins.patch -Patch9: 0009-Fix-unit-tests-for-GuestLinux-Cap-Halt.patch -Patch10: 0010-Skip-failing-tests.patch -# https://github.com/hashicorp/vagrant/pull/10945 -Patch11: 0011-Do-not-list-load-dependencies-if-vagrant-spec-is-not.patch -Patch12: 0012-Disable-Subprocess-unit-test.patch -# https://github.com/hashicorp/vagrant/pull/11339 -Patch13: 0013-Update-some-outdated-gem-versions.patch +Patch3: 0003-plugins-don-t-abuse-require_relative.patch.patch +Patch4: 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch +Patch5: 0005-do-not-depend-on-wdm.patch +Patch6: 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch +Patch7: 0007-Don-t-abuse-relative-paths-in-plugins.patch +Patch8: 0008-Skip-failing-tests.patch +Patch9: 0009-Disable-Subprocess-unit-test.patch +Patch10: 0010-Bump-version-of-net-ssh-to-6.0.patch +# Drop this on the next upstream release after 2.2.9 +# upstream fix from https://github.com/hashicorp/vagrant/pull/11607 +Patch11: 0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -# we use the rpm macros in this spec -%{?load:%{SOURCE97}} - # force only one ruby version # CAUTION: if you change this, then you *must* also change the sed calls which # fix these values in macros.vagrant +# FIXME: for now vagrant does not support Ruby 2.7 +%if 0%{?suse_version} > 1500 +%global rb_build_versions ruby26 +%global rb_build_abi ruby:2.6.0 +%global rb_ruby_suffix ruby2.6 +%else %global rb_build_versions %rb_default_ruby %global rb_build_abi %rb_default_ruby_abi +%global rb_ruby_suffix %rb_default_ruby_suffix +%endif + +# we use the rpm macros in this spec +# need to load them *after* defining the rb_* macros +%{?load:%{SOURCE97}} %global vagrant_plugin_name vagrant @@ -83,7 +88,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build #=============================================================================== # s.required_ruby_version = "~> 2.4", "< 2.7" -BuildRequires: %{ruby < 2.7} +BuildRequires: %{ruby:2 < 2.7} BuildRequires: %{ruby:2 >= 2.4} # # @@ -91,13 +96,12 @@ BuildRequires: %{ruby:2 >= 2.4} BuildRequires: %{rubygem bundler} # s.add_dependency "bcrypt_pbkdf", "~> 1.0.0" BuildRequires: %{rubygem bcrypt_pbkdf:1.0 } -# s.add_dependency "childprocess", "~> 0.6.0" -BuildRequires: %{rubygem childprocess:0.6 } +# s.add_dependency "childprocess", "~> 3.0.0" +BuildRequires: %{rubygem childprocess:3.0 } # s.add_dependency "ed25519", "~> 1.2.4" BuildRequires: %{rubygem ed25519:1.2 >= 1.2.4 } # s.add_dependency "erubis", "~> 2.7.0" BuildRequires: %{rubygem erubis:2.7 } -# PATCHED # s.add_dependency "i18n", "~> 1.8" BuildRequires: %{rubygem i18n:1 >= 1.8 } # s.add_dependency "listen", "~> 3.1.5" @@ -108,8 +112,8 @@ BuildRequires: %{rubygem hashicorp-checkpoint:0.1 >= 0.1.5 } BuildRequires: %{rubygem log4r:1.1 >= 1.1.9 } BuildConflicts: %{rubygem log4r:1.1 >= 1.1.11 } # PATCHED -# s.add_dependency "net-ssh", "~> 5.2.0" -BuildRequires: %{rubygem net-ssh:5.2} +# s.add_dependency "net-ssh", "~> 6.0" +BuildRequires: %{rubygem net-ssh:6 } # s.add_dependency "net-sftp", "~> 2.1" BuildRequires: %{rubygem net-sftp:2 >= 2.1 } # s.add_dependency "net-scp", "~> 1.2.0" @@ -119,17 +123,16 @@ BuildRequires: %{rubygem rb-kqueue:0.2 } # s.add_dependency "rest-client", ">= 1.6.0", "< 3.0" BuildRequires: %{rubygem rest-client >= 1.6} BuildConflicts: %{rubygem rest-client >= 3.0} -# PATCHED # s.add_dependency "rubyzip", "~> 2.0" BuildRequires: %{rubygem rubyzip:2} # Intentionally removed, wdm only works on Windows # BuildRequires: %%{rubygem wdm } -# s.add_dependency "winrm", "~> 2.1" -BuildRequires: %{rubygem winrm:2 >= 2.1 } -# s.add_dependency "winrm-fs", "~> 1.0" -BuildRequires: %{rubygem winrm-fs:1 } -# s.add_dependency "winrm-elevated", "~> 1.1" -BuildRequires: %{rubygem winrm-elevated:1 >= 1.1 } +# s.add_dependency "winrm", ">= 2.3.4", "< 3.0" +BuildRequires: %{rubygem winrm:2 >= 2.3.4 } +# s.add_dependency "winrm-fs", ">= 1.3.4", "< 2.0" +BuildRequires: %{rubygem winrm-fs:1 >= 1.3.4 } +# s.add_dependency "winrm-elevated", ">= 1.2.1", "< 2.0" +BuildRequires: %{rubygem winrm-elevated:1 >= 1.2.1 } # s.add_dependency "vagrant_cloud", "~> 2.0.3" BuildRequires: %{rubygem vagrant_cloud:2.0 >= 2.0.3 } @@ -160,6 +163,9 @@ BuildRequires: %{rubygem addressable >= 2.6} # Prevent have choice for rubygem(ruby:2.5.0:public_suffix) >= 2.0.2 BuildRequires: %{rubygem public_suffix:4} +# gem2rpm *must* be included as a direct dependency when building with a +# non-default ruby version +BuildRequires: %{rubygem gem2rpm} BuildRequires: ruby-macros >= 5 # for the test @@ -177,13 +183,12 @@ BuildRequires: %{rubygem vagrant-spec} # # s.add_dependency "bcrypt_pbkdf", "~> 1.0.0" Requires: %{rubygem bcrypt_pbkdf:1.0 } -# s.add_dependency "childprocess", "~> 0.6.0" -Requires: %{rubygem childprocess:0.6} +# s.add_dependency "childprocess", "~> 3.0.0" +Requires: %{rubygem childprocess:3.0} # s.add_dependency "ed25519", "~> 1.2.4" Requires: %{rubygem ed25519:1.2 >= 1.2.4} # s.add_dependency "erubis", "~> 2.7.0" Requires: %{rubygem erubis:2.7} -# PATCHED # s.add_dependency "i18n", "~> 1.8" Requires: %{rubygem i18n:1 >= 1.8} # s.add_dependency "listen", "~> 3.1.5" @@ -194,8 +199,8 @@ Requires: %{rubygem hashicorp-checkpoint:0.1 >= 0.1.5} Requires: %{rubygem log4r:1.1 >= 1.1.9 } Requires: %{rubygem log4r:1.1 < 1.1.11 } # PATCHED -# s.add_dependency "net-ssh", "~> 5.2.0" -Requires: %{rubygem net-ssh:5.2} +# s.add_dependency "net-ssh", "~> 6.0" +Requires: %{rubygem net-ssh:6} # s.add_dependency "net-sftp", "~> 2.1" Requires: %{rubygem net-sftp:2 >= 2.1} # s.add_dependency "net-scp", "~> 1.2.0" @@ -205,17 +210,16 @@ Requires: %{rubygem rb-kqueue:0.2} # s.add_dependency "rest-client", ">= 1.6.0", "< 3.0" Requires: %{rubygem rest-client >= 1.6} Requires: %{rubygem rest-client < 3.0} -# PATCHED # s.add_dependency "rubyzip", "~> 2.0" Requires: %{rubygem rubyzip:2} # s.add_dependency "wdm", "~> 0.1.0" # skip wdm, Windows only -# s.add_dependency "winrm", "~> 2.1" -Requires: %{rubygem winrm:2 >= 2.1} -# s.add_dependency "winrm-fs", "~> 1.0" -Requires: %{rubygem winrm-fs:1} -# s.add_dependency "winrm-elevated", "~> 1.1" -Requires: %{rubygem winrm-elevated:1 >= 1.1} +# s.add_dependency "winrm", ">= 2.3.4", "< 3.0" +Requires: %{rubygem winrm:2 >= 2.3.4} +# s.add_dependency "winrm-fs", ">= 1.3.4", "< 2.0" +Requires: %{rubygem winrm-fs:1 >= 1.3.4} +# s.add_dependency "winrm-elevated", ">= 1.2.1", "< 2.0" +Requires: %{rubygem winrm-elevated:1 >= 1.2.1} # s.add_dependency "vagrant_cloud", "~> 2.0.3" Requires: %{rubygem vagrant_cloud:2.0 >= 2.0.3} # s.add_dependency "ruby_dep", "<= 1.3.1" @@ -290,8 +294,9 @@ mv %{mod_full_name}.gem %{_sourcedir} %install +# cannot use %%vagrant_plugin_install here, as we provide a different --bindir CONFIGURE_ARGS="--with-cflags='%{optflags}' $CONFIGURE_ARGS" -gem install -V -f --local --no-user-install \ +%gem_binary install -V -f --local --no-user-install \ --ignore-dependencies --no-document --backtrace \ --document=rdoc,ri \ --install-dir %{buildroot}%{vagrant_plugin_dir} \ @@ -300,7 +305,7 @@ gem install -V -f --local --no-user-install \ # the actual vagrant binary generated from the binstub install -D -m 755 %{SOURCE96} %{buildroot}%{_bindir}/vagrant sed -i 's|@vagrant_embedded_dir@|%{vagrant_embedded_dir}|' %{buildroot}%{_bindir}/vagrant -gem_path=$(ruby.%{rb_default_ruby_suffix} -e "print Gem.path.reject{|path| path.include? 'home'}.join(':')") +gem_path=$(ruby.%{rb_ruby_suffix} -e "print Gem.path.reject{|path| path.include? 'home'}.join(':')") sed -i "s|@ruby_vagrant_gem_path@|$gem_path:%{vagrant_plugin_dir}|" %{buildroot}%{_bindir}/vagrant # install the rpm macros & expand the name, name-version and vagrant_rb_* macros @@ -310,7 +315,7 @@ sed -i "s|%%{name}|%{name}|" %{buildroot}%{macros_vagrant} sed -i "s|%{name}-%%{version}|%{name}-%{version}|" %{buildroot}%{macros_vagrant} sed -i "s|%%{rb_build_versions}|%{rb_build_versions}|" %{buildroot}%{macros_vagrant} sed -i "s|%%{rb_build_abi}|%{rb_build_abi}|" %{buildroot}%{macros_vagrant} -sed -i "s|%%{rb_default_ruby_suffix}|%{rb_default_ruby_suffix}|" %{buildroot}%{macros_vagrant} +sed -i "s|%%{rb_ruby_suffix}|%{rb_ruby_suffix}|" %{buildroot}%{macros_vagrant} # install post, transfiletrigerin & transfiletriggerun scriptlets %global post_rb %{vagrant_embedded_dir}/bin/vagrant_post.rb @@ -326,6 +331,7 @@ for file in %{post_rb} %{transfiletriggerin_rb} %{transfiletriggerun_rb}; do sed -i "s|%%{vagrant_plugin_conf}|%{vagrant_plugin_conf}|" %{buildroot}$file sed -i "s|%%{name}|%{name}|" %{buildroot}$file sed -i "s|%%{version}|%{version}|" %{buildroot}$file + sed -i "s|%%{rb_ruby_suffix}|%{rb_ruby_suffix}|" %{buildroot}$file done # man page @@ -352,20 +358,20 @@ mkdir -p %{buildroot}%{dirname:%{vagrant_plugin_docdir}} # fix shebang in %%{vagrant_dir}/bin/%%{name} -sed -i 's|^\#\!/usr/bin/env.*|\#\!/usr/bin/ruby\.%{rb_default_ruby_suffix}|' \ +sed -i 's|^\#\!/usr/bin/env.*|\#\!/usr/bin/ruby\.%{rb_ruby_suffix}|' \ %{buildroot}%{vagrant_dir}/bin/%{name} # remove versioned name from %%{vagrant_plugin_dir}/bin/%%{name} # (aka /usr/share/vagrant/gems/bin/vagrant) -mv %{buildroot}%{vagrant_plugin_dir}/bin/%{name}.%{rb_default_ruby_suffix} \ +mv %{buildroot}%{vagrant_plugin_dir}/bin/%{name}.%{rb_ruby_suffix} \ %{buildroot}%{vagrant_plugin_dir}/bin/%{name} # Garbage collection rm -f %{buildroot}%{vagrant_dir}/test/vagrant-spec/boxes/.keep rm -f %{buildroot}%{vagrant_dir}/bin/vagrant.orig -rm -f %{buildroot}%{_bindir}/vagrant.orig.%{rb_default_ruby_suffix} -rm -f %{buildroot}%{vagrant_plugin_dir}/bin/vagrant.orig.%{rb_default_ruby_suffix} +rm -f %{buildroot}%{_bindir}/vagrant.orig.%{rb_ruby_suffix} +rm -f %{buildroot}%{vagrant_plugin_dir}/bin/vagrant.orig.%{rb_ruby_suffix} rm -f %{buildroot}%{vagrant_dir}/lib/vagrant/util.rb.orig # remove build script from vagrant @@ -377,7 +383,7 @@ rm -f %{buildroot}%{vagrant_dir}/.runner.sh # -> don't have to cleanup, the Gemfile is excluded anyway sed -i "s|gem 'vagrant-spec', git.*$|gem 'vagrant-spec'|" Gemfile -export GEM_PATH=%{buildroot}%{vagrant_plugin_dir}:$(ruby.%{rb_default_ruby_suffix} -e "print Gem.path.reject{|path| path.include? 'home'}.join(':')") +export GEM_PATH=%{buildroot}%{vagrant_plugin_dir}:$(ruby.%{rb_ruby_suffix} -e "print Gem.path.reject{|path| path.include? 'home'}.join(':')") bundle exec rake test:unit %pre diff --git a/vagrant_post.rb b/vagrant_post.rb index 2cd8930..3326405 100644 --- a/vagrant_post.rb +++ b/vagrant_post.rb @@ -1,4 +1,4 @@ -#!/usr/bin/ruby +#!/usr/bin/ruby.%{rb_ruby_suffix} begin $LOAD_PATH.unshift "%{vagrant_dir}/lib" diff --git a/vagrant_transfiletriggerin.rb b/vagrant_transfiletriggerin.rb index 2379abc..bdca015 100644 --- a/vagrant_transfiletriggerin.rb +++ b/vagrant_transfiletriggerin.rb @@ -1,4 +1,4 @@ -#!/usr/bin/ruby +#!/usr/bin/ruby.%{rb_ruby_suffix} begin $LOAD_PATH.unshift "%{vagrant_dir}/lib" diff --git a/vagrant_transfiletriggerun.rb b/vagrant_transfiletriggerun.rb index 1d08218..951bd34 100644 --- a/vagrant_transfiletriggerun.rb +++ b/vagrant_transfiletriggerun.rb @@ -1,4 +1,4 @@ -#!/usr/bin/ruby +#!/usr/bin/ruby.%{rb_ruby_suffix} begin $LOAD_PATH.unshift "%{vagrant_dir}/lib" From dff50cb13fa93198e584a0fd97692a7854a20a1746287f0bb5f59d19a5241a6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= Date: Thu, 14 May 2020 19:32:50 +0000 Subject: [PATCH 2/2] Accepting request 805578 from home:dancermak:branches:Virtualization:vagrant Also bump the version of net-sftp to ~> 3.0 OBS-URL: https://build.opensuse.org/request/show/805578 OBS-URL: https://build.opensuse.org/package/show/Virtualization:vagrant/vagrant?expand=0&rev=43 --- ...-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch | 17 ++++++++++------- ...ck-out-guest-capabilities-instead-of-r.patch | 2 +- vagrant.changes | 2 +- vagrant.spec | 12 +++++++----- 4 files changed, 19 insertions(+), 14 deletions(-) rename 0010-Bump-version-of-net-ssh-to-6.0.patch => 0010-Bump-version-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch (54%) diff --git a/0010-Bump-version-of-net-ssh-to-6.0.patch b/0010-Bump-version-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch similarity index 54% rename from 0010-Bump-version-of-net-ssh-to-6.0.patch rename to 0010-Bump-version-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch index 5d10bc3..1343912 100644 --- a/0010-Bump-version-of-net-ssh-to-6.0.patch +++ b/0010-Bump-version-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch @@ -1,25 +1,28 @@ -From ad290684e23ccb0cfd232983f72fc01affb77058 Mon Sep 17 00:00:00 2001 +From 51af48f8f2ae39ef682d4310970c87b17bb72780 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= Date: Mon, 11 May 2020 11:32:01 +0200 -Subject: [PATCH 10/11] Bump version of net-ssh to ~> 6.0 +Subject: [PATCH 10/11] Bump version of net-ssh to ~> 6.0 and net-sftp to ~> + 3.0 --- - vagrant.gemspec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + vagrant.gemspec | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vagrant.gemspec b/vagrant.gemspec -index 49fdf2e8e..36709b74b 100644 +index 49fdf2e8e..78bb2b8b5 100644 --- a/vagrant.gemspec +++ b/vagrant.gemspec -@@ -23,7 +23,7 @@ Gem::Specification.new do |s| +@@ -23,8 +23,8 @@ Gem::Specification.new do |s| s.add_dependency "listen", "~> 3.1.5" s.add_dependency "hashicorp-checkpoint", "~> 0.1.5" s.add_dependency "log4r", "~> 1.1.9", "< 1.1.11" - s.add_dependency "net-ssh", "~> 5.2.0" +- s.add_dependency "net-sftp", "~> 2.1" + s.add_dependency "net-ssh", "~> 6.0" - s.add_dependency "net-sftp", "~> 2.1" ++ s.add_dependency "net-sftp", "~> 3.0" s.add_dependency "net-scp", "~> 1.2.0" s.add_dependency "rb-kqueue", "~> 0.2.0" + s.add_dependency "rest-client", ">= 1.6.0", "< 3.0" -- 2.26.2 diff --git a/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch b/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch index 5c74b88..d83f4c7 100644 --- a/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch +++ b/0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch @@ -1,4 +1,4 @@ -From cb0fbcd3968efe6b46fcf15ca8ec6ef950b55dd0 Mon Sep 17 00:00:00 2001 +From e4b3e72c9a267097e803db8b1b936523ee84ce0b Mon Sep 17 00:00:00 2001 From: Brian Cain Date: Mon, 11 May 2020 08:01:29 -0700 Subject: [PATCH 11/11] Fixes #11606: Mock out guest capabilities instead of diff --git a/vagrant.changes b/vagrant.changes index 39529c7..7ad7584 100644 --- a/vagrant.changes +++ b/vagrant.changes @@ -23,7 +23,7 @@ Mon May 11 17:58:59 UTC 2020 - Dan Čermák * 0009-Disable-Subprocess-unit-test.patch Add patch: - * 0010-Bump-version-of-net-ssh-to-6.0.patch + * 0010-Bump-version-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch * 0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch - Fix various issues when building vagrant with a non-default ruby version diff --git a/vagrant.spec b/vagrant.spec index d219887..b97f2bc 100644 --- a/vagrant.spec +++ b/vagrant.spec @@ -55,7 +55,7 @@ Patch6: 0006-do-not-abuse-relative-paths-in-docker-plugin-to-make.patch Patch7: 0007-Don-t-abuse-relative-paths-in-plugins.patch Patch8: 0008-Skip-failing-tests.patch Patch9: 0009-Disable-Subprocess-unit-test.patch -Patch10: 0010-Bump-version-of-net-ssh-to-6.0.patch +Patch10: 0010-Bump-version-of-net-ssh-to-6.0-and-net-sftp-to-3.0.patch # Drop this on the next upstream release after 2.2.9 # upstream fix from https://github.com/hashicorp/vagrant/pull/11607 Patch11: 0011-Fixes-11606-Mock-out-guest-capabilities-instead-of-r.patch @@ -114,8 +114,9 @@ BuildConflicts: %{rubygem log4r:1.1 >= 1.1.11 } # PATCHED # s.add_dependency "net-ssh", "~> 6.0" BuildRequires: %{rubygem net-ssh:6 } -# s.add_dependency "net-sftp", "~> 2.1" -BuildRequires: %{rubygem net-sftp:2 >= 2.1 } +# PATCHED +# s.add_dependency "net-sftp", "~> 3.0" +BuildRequires: %{rubygem net-sftp:3 } # s.add_dependency "net-scp", "~> 1.2.0" BuildRequires: %{rubygem net-scp:1.2 } # s.add_dependency "rb-kqueue", "~> 0.2.0" @@ -201,8 +202,9 @@ Requires: %{rubygem log4r:1.1 < 1.1.11 } # PATCHED # s.add_dependency "net-ssh", "~> 6.0" Requires: %{rubygem net-ssh:6} -# s.add_dependency "net-sftp", "~> 2.1" -Requires: %{rubygem net-sftp:2 >= 2.1} +# PATCHED +# s.add_dependency "net-sftp", "~> 3.0" +Requires: %{rubygem net-sftp:3 } # s.add_dependency "net-scp", "~> 1.2.0" Requires: %{rubygem net-scp:1.2 >= 1.2.0} # s.add_dependency "rb-kqueue", "~> 0.2.0"