- Combined dependency patches into a common dependency.patch:
* 0005-do-not-depend-on-wdm.patch * 0010-Remove-dependency-on-grpc-tools.patch * 0011-Remove-vagrant-ssl-extension.patch * 0012-Bump-rgl-dependency-to-0.6.6.patch * 0013-Bump-webrick-dependency-to-1.8.0.patch * 0014-Bump-vagrant_cloud_dependency.patch * childprocess-5.0.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization:vagrant/vagrant?expand=0&rev=92
This commit is contained in:
commit
411a888ee6
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
29
0001-bin-vagrant-silence-warning-about-installer.patch
Normal file
29
0001-bin-vagrant-silence-warning-about-installer.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
From 17dca9eb3e51d8f98c80ce100ad52ac8ea6c3c5b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Antonio Terceiro <terceiro@debian.org>
|
||||||
|
Date: Sat, 11 Oct 2014 16:54:58 -0300
|
||||||
|
Subject: [PATCH 01/13] bin/vagrant: silence warning about installer
|
||||||
|
|
||||||
|
Signed-off-by: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
---
|
||||||
|
bin/vagrant | 5 -----
|
||||||
|
1 file changed, 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/bin/vagrant b/bin/vagrant
|
||||||
|
index 7ca30b391..d3f4ea61a 100755
|
||||||
|
--- a/bin/vagrant
|
||||||
|
+++ b/bin/vagrant
|
||||||
|
@@ -221,11 +221,6 @@ begin
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
- if !Vagrant.in_installer? && !Vagrant.very_quiet?
|
||||||
|
- # If we're not in the installer, warn.
|
||||||
|
- env.ui.warn(I18n.t("vagrant.general.not_in_installer") + "\n", prefix: false)
|
||||||
|
- end
|
||||||
|
-
|
||||||
|
# Acceptable experimental flag values include:
|
||||||
|
#
|
||||||
|
# Unset - Disables experimental features
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
98
0002-Use-a-private-temporary-dir.patch
Normal file
98
0002-Use-a-private-temporary-dir.patch
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
From 1f229c3d60e0b4c31fbbbbc5dc0906719f2e53a0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Antonio Terceiro <terceiro@debian.org>
|
||||||
|
Date: Wed, 22 Oct 2014 09:40:14 -0200
|
||||||
|
Subject: [PATCH 02/13] Use a private temporary dir
|
||||||
|
|
||||||
|
Without this vagrant will clutter $TMPDIR with dozens of even hundreds
|
||||||
|
of temporary files (~4 per vagrant invocation).
|
||||||
|
|
||||||
|
Signed-off-by: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
---
|
||||||
|
lib/vagrant/box.rb | 3 ++-
|
||||||
|
lib/vagrant/util.rb | 2 ++
|
||||||
|
lib/vagrant/util/tempfile.rb | 39 ++++++++++++++++++++++++++++++++++++
|
||||||
|
3 files changed, 43 insertions(+), 1 deletion(-)
|
||||||
|
create mode 100644 lib/vagrant/util/tempfile.rb
|
||||||
|
|
||||||
|
diff --git a/lib/vagrant/box.rb b/lib/vagrant/box.rb
|
||||||
|
index 90dc69d38..4ee79b988 100644
|
||||||
|
--- a/lib/vagrant/box.rb
|
||||||
|
+++ b/lib/vagrant/box.rb
|
||||||
|
@@ -9,6 +9,7 @@ require "vagrant/util/downloader"
|
||||||
|
require "vagrant/util/platform"
|
||||||
|
require "vagrant/util/safe_chdir"
|
||||||
|
require "vagrant/util/subprocess"
|
||||||
|
+require "vagrant/util/tempfile"
|
||||||
|
|
||||||
|
module Vagrant
|
||||||
|
# Represents a "box," which is a package Vagrant environment that is used
|
||||||
|
@@ -142,7 +143,7 @@ module Vagrant
|
||||||
|
# @param [Hash] download_options Options to pass to the downloader.
|
||||||
|
# @return [BoxMetadata]
|
||||||
|
def load_metadata(download_options={})
|
||||||
|
- tf = Tempfile.new("vagrant-load-metadata")
|
||||||
|
+ tf = Util::Tempfile.new("vagrant-load-metadata")
|
||||||
|
tf.close
|
||||||
|
|
||||||
|
url = @metadata_url
|
||||||
|
diff --git a/lib/vagrant/util.rb b/lib/vagrant/util.rb
|
||||||
|
index 8e3cbd2af..84df146f0 100644
|
||||||
|
--- a/lib/vagrant/util.rb
|
||||||
|
+++ b/lib/vagrant/util.rb
|
||||||
|
@@ -54,6 +54,8 @@ module Vagrant
|
||||||
|
autoload :SilenceWarnings, 'vagrant/util/silence_warnings'
|
||||||
|
autoload :SSH, 'vagrant/util/ssh'
|
||||||
|
autoload :StackedProcRunner, 'vagrant/util/stacked_proc_runner'
|
||||||
|
+ autoload :Tempfile, 'vagrant/util/tempfile'
|
||||||
|
+ autoload :TemplateRenderer, 'vagrant/util/template_renderer'
|
||||||
|
autoload :StringBlockEditor, 'vagrant/util/string_block_editor'
|
||||||
|
autoload :Subprocess, 'vagrant/util/subprocess'
|
||||||
|
autoload :TemplateRenderer, 'vagrant/util/template_renderer'
|
||||||
|
diff --git a/lib/vagrant/util/tempfile.rb b/lib/vagrant/util/tempfile.rb
|
||||||
|
new file mode 100644
|
||||||
|
index 000000000..0cbbb53ac
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/lib/vagrant/util/tempfile.rb
|
||||||
|
@@ -0,0 +1,39 @@
|
||||||
|
+require 'fileutils'
|
||||||
|
+require 'tmpdir'
|
||||||
|
+
|
||||||
|
+module Vagrant
|
||||||
|
+ module Util
|
||||||
|
+ class Tempfile < ::Tempfile
|
||||||
|
+
|
||||||
|
+ def initialize(basename)
|
||||||
|
+ super(basename, private_tmpdir)
|
||||||
|
+ end
|
||||||
|
+
|
||||||
|
+ def private_tmpdir
|
||||||
|
+ self.class.private_tmpdir
|
||||||
|
+ end
|
||||||
|
+
|
||||||
|
+ def self.private_tmpdir
|
||||||
|
+ @private_tmpdir ||=
|
||||||
|
+ begin
|
||||||
|
+ user = Etc.getpwuid.name
|
||||||
|
+ pid = Process.pid
|
||||||
|
+ tmpdir = File.join(Dir.tmpdir, "vagrant-#{user}-#{pid}")
|
||||||
|
+ FileUtils.mkdir_p(tmpdir)
|
||||||
|
+ FileUtils.chmod(0700, tmpdir)
|
||||||
|
+ tmpdir
|
||||||
|
+ end
|
||||||
|
+ end
|
||||||
|
+
|
||||||
|
+ def self.mktmpdir(prefix_suffix)
|
||||||
|
+ Dir.mktmpdir(prefix_suffix, private_tmpdir)
|
||||||
|
+ end
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+ end
|
||||||
|
+ end
|
||||||
|
+end
|
||||||
|
+
|
||||||
|
+at_exit do
|
||||||
|
+ FileUtils.rm_rf(Vagrant::Util::Tempfile.private_tmpdir)
|
||||||
|
+end
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
158
0003-plugins-don-t-abuse-require_relative.patch.patch
Normal file
158
0003-plugins-don-t-abuse-require_relative.patch.patch
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
From 38cfae4a7ab162d04732a7bec576413c83e8d9b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
Date: Wed, 17 May 2017 09:09:57 +0200
|
||||||
|
Subject: [PATCH 03/13] plugins-don-t-abuse-require_relative.patch
|
||||||
|
|
||||||
|
Signed-off-by: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
---
|
||||||
|
plugins/guests/arch/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/debian/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/freebsd/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/funtoo/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/gentoo/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/netbsd/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/nixos/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/openbsd/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/redhat/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/slackware/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/suse/cap/configure_networks.rb | 2 +-
|
||||||
|
11 files changed, 11 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/guests/arch/cap/configure_networks.rb b/plugins/guests/arch/cap/configure_networks.rb
|
||||||
|
index 79f14213a..d8966b171 100644
|
||||||
|
--- a/plugins/guests/arch/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/arch/cap/configure_networks.rb
|
||||||
|
@@ -2,7 +2,7 @@ require "ipaddr"
|
||||||
|
require "socket"
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestArch
|
||||||
|
diff --git a/plugins/guests/debian/cap/configure_networks.rb b/plugins/guests/debian/cap/configure_networks.rb
|
||||||
|
index bb1ff69f9..1e29d57ab 100644
|
||||||
|
--- a/plugins/guests/debian/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/debian/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestDebian
|
||||||
|
diff --git a/plugins/guests/freebsd/cap/configure_networks.rb b/plugins/guests/freebsd/cap/configure_networks.rb
|
||||||
|
index 5020eebe8..1778f94c4 100644
|
||||||
|
--- a/plugins/guests/freebsd/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/freebsd/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestFreeBSD
|
||||||
|
diff --git a/plugins/guests/funtoo/cap/configure_networks.rb b/plugins/guests/funtoo/cap/configure_networks.rb
|
||||||
|
index 6e20dc237..1b41340c1 100644
|
||||||
|
--- a/plugins/guests/funtoo/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/funtoo/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestFuntoo
|
||||||
|
diff --git a/plugins/guests/gentoo/cap/configure_networks.rb b/plugins/guests/gentoo/cap/configure_networks.rb
|
||||||
|
index f7464432c..002271b71 100644
|
||||||
|
--- a/plugins/guests/gentoo/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/gentoo/cap/configure_networks.rb
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
require "tempfile"
|
||||||
|
require "ipaddr"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestGentoo
|
||||||
|
diff --git a/plugins/guests/netbsd/cap/configure_networks.rb b/plugins/guests/netbsd/cap/configure_networks.rb
|
||||||
|
index d53b6c6e4..922edfdab 100644
|
||||||
|
--- a/plugins/guests/netbsd/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/netbsd/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestNetBSD
|
||||||
|
diff --git a/plugins/guests/nixos/cap/configure_networks.rb b/plugins/guests/nixos/cap/configure_networks.rb
|
||||||
|
index 96458622f..ed371765e 100644
|
||||||
|
--- a/plugins/guests/nixos/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/nixos/cap/configure_networks.rb
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
require "ipaddr"
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestNixos
|
||||||
|
diff --git a/plugins/guests/openbsd/cap/configure_networks.rb b/plugins/guests/openbsd/cap/configure_networks.rb
|
||||||
|
index fefc05b9e..a3bfcaf48 100644
|
||||||
|
--- a/plugins/guests/openbsd/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/openbsd/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestOpenBSD
|
||||||
|
diff --git a/plugins/guests/redhat/cap/configure_networks.rb b/plugins/guests/redhat/cap/configure_networks.rb
|
||||||
|
index c618c8e53..31ba4f315 100644
|
||||||
|
--- a/plugins/guests/redhat/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/redhat/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestRedHat
|
||||||
|
diff --git a/plugins/guests/slackware/cap/configure_networks.rb b/plugins/guests/slackware/cap/configure_networks.rb
|
||||||
|
index b11b93e98..0f180275f 100644
|
||||||
|
--- a/plugins/guests/slackware/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/slackware/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestSlackware
|
||||||
|
diff --git a/plugins/guests/suse/cap/configure_networks.rb b/plugins/guests/suse/cap/configure_networks.rb
|
||||||
|
index 2dd140230..e6dd96f08 100644
|
||||||
|
--- a/plugins/guests/suse/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/suse/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestSUSE
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
@ -0,0 +1,37 @@
|
|||||||
|
From ea9f1609c470b03c39d3a83d31dbc780360898c9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
Date: Fri, 16 Nov 2018 21:12:43 +0100
|
||||||
|
Subject: [PATCH 04/13] 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 <kastl@b1-systems.de>
|
||||||
|
---
|
||||||
|
plugins/providers/virtualbox/action/package.rb | 2 +-
|
||||||
|
plugins/providers/virtualbox/action/package_setup_folders.rb | 2 +-
|
||||||
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/providers/virtualbox/action/package.rb b/plugins/providers/virtualbox/action/package.rb
|
||||||
|
index fb5ebdabf..c03c1c373 100644
|
||||||
|
--- a/plugins/providers/virtualbox/action/package.rb
|
||||||
|
+++ b/plugins/providers/virtualbox/action/package.rb
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-require_relative "../../../../lib/vagrant/action/general/package"
|
||||||
|
+require "vagrant/action/general/package"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module ProviderVirtualBox
|
||||||
|
diff --git a/plugins/providers/virtualbox/action/package_setup_folders.rb b/plugins/providers/virtualbox/action/package_setup_folders.rb
|
||||||
|
index a0baf516f..867fe2bf8 100644
|
||||||
|
--- a/plugins/providers/virtualbox/action/package_setup_folders.rb
|
||||||
|
+++ b/plugins/providers/virtualbox/action/package_setup_folders.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "fileutils"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/action/general/package_setup_folders"
|
||||||
|
+require "vagrant/action/general/package"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module ProviderVirtualBox
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
25
0005-do-not-depend-on-wdm.patch
Normal file
25
0005-do-not-depend-on-wdm.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From c0a7db63b7cde09913c395737fabf02e6619d8e2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
Date: Mon, 4 Jun 2018 09:18:23 +0200
|
||||||
|
Subject: [PATCH 05/13] do not depend on wdm
|
||||||
|
|
||||||
|
Signed-off-by: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
---
|
||||||
|
vagrant.gemspec | 1 -
|
||||||
|
1 file changed, 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/vagrant.gemspec b/vagrant.gemspec
|
||||||
|
index 2a740089a..7d417b019 100644
|
||||||
|
--- a/vagrant.gemspec
|
||||||
|
+++ b/vagrant.gemspec
|
||||||
|
@@ -35,7 +35,6 @@ Gem::Specification.new do |s|
|
||||||
|
s.add_dependency "rgl", "~> 0.5.10"
|
||||||
|
s.add_dependency "rubyzip", "~> 2.3.2"
|
||||||
|
s.add_dependency "vagrant_cloud", "~> 3.0.5"
|
||||||
|
- s.add_dependency "wdm", "~> 0.1.1"
|
||||||
|
s.add_dependency "winrm", ">= 2.3.6", "< 3.0"
|
||||||
|
s.add_dependency "winrm-elevated", ">= 1.2.3", "< 2.0"
|
||||||
|
s.add_dependency "winrm-fs", ">= 1.3.5", "< 2.0"
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
From 61d71451dbc739889c488ac4281d696cbce756e4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Johannes Kastl <kastl@b1-systems.de>
|
||||||
|
Date: Fri, 16 Nov 2018 21:14:46 +0100
|
||||||
|
Subject: [PATCH 06/13] 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 <kastl@b1-systems.de>
|
||||||
|
---
|
||||||
|
plugins/providers/docker/config.rb | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/providers/docker/config.rb b/plugins/providers/docker/config.rb
|
||||||
|
index 07c4e5333..e8142df8b 100644
|
||||||
|
--- a/plugins/providers/docker/config.rb
|
||||||
|
+++ b/plugins/providers/docker/config.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "pathname"
|
||||||
|
|
||||||
|
-require_relative "../../../lib/vagrant/util/platform"
|
||||||
|
+require "vagrant/util/platform"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module DockerProvider
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
69
0007-Don-t-abuse-relative-paths-in-plugins.patch
Normal file
69
0007-Don-t-abuse-relative-paths-in-plugins.patch
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
From 2412e4fca92e78afe840ed442498bbe17289d636 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dcermak@suse.com>
|
||||||
|
Date: Fri, 11 Jan 2019 12:32:28 +0100
|
||||||
|
Subject: [PATCH 07/13] Don't abuse relative paths in plugins
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Signed-off-by: Dan Čermák <dcermak@suse.com>
|
||||||
|
---
|
||||||
|
plugins/guests/alt/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/coreos/cap/configure_networks.rb | 2 +-
|
||||||
|
plugins/guests/nixos/cap/change_host_name.rb | 2 +-
|
||||||
|
plugins/provisioners/chef/provisioner/base.rb | 2 +-
|
||||||
|
4 files changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/guests/alt/cap/configure_networks.rb b/plugins/guests/alt/cap/configure_networks.rb
|
||||||
|
index e9f64a940..9236c1b2b 100644
|
||||||
|
--- a/plugins/guests/alt/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/alt/cap/configure_networks.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestALT
|
||||||
|
diff --git a/plugins/guests/coreos/cap/configure_networks.rb b/plugins/guests/coreos/cap/configure_networks.rb
|
||||||
|
index 5ccd23e80..3d6086c06 100644
|
||||||
|
--- a/plugins/guests/coreos/cap/configure_networks.rb
|
||||||
|
+++ b/plugins/guests/coreos/cap/configure_networks.rb
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
require "tempfile"
|
||||||
|
require "yaml"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestCoreOS
|
||||||
|
diff --git a/plugins/guests/nixos/cap/change_host_name.rb b/plugins/guests/nixos/cap/change_host_name.rb
|
||||||
|
index 340eddeab..bacae1f0d 100644
|
||||||
|
--- a/plugins/guests/nixos/cap/change_host_name.rb
|
||||||
|
+++ b/plugins/guests/nixos/cap/change_host_name.rb
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
module VagrantPlugins
|
||||||
|
module GuestNixos
|
||||||
|
diff --git a/plugins/provisioners/chef/provisioner/base.rb b/plugins/provisioners/chef/provisioner/base.rb
|
||||||
|
index 7bc8ceca0..e938305e7 100644
|
||||||
|
--- a/plugins/provisioners/chef/provisioner/base.rb
|
||||||
|
+++ b/plugins/provisioners/chef/provisioner/base.rb
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
require "tempfile"
|
||||||
|
|
||||||
|
require_relative "../../../../lib/vagrant/util/presence"
|
||||||
|
-require_relative "../../../../lib/vagrant/util/template_renderer"
|
||||||
|
+require "vagrant/util/template_renderer"
|
||||||
|
|
||||||
|
require_relative "../installer"
|
||||||
|
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
34
0008-Skip-failing-tests.patch
Normal file
34
0008-Skip-failing-tests.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From d8bccbad4e211a6612995225712151e5dea2bcc0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dcermak@suse.com>
|
||||||
|
Date: Mon, 1 Apr 2019 17:28:31 +0200
|
||||||
|
Subject: [PATCH 08/13] 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 dbbd52112..4481e4c09 100644
|
||||||
|
--- a/test/unit/bin/vagrant_test.rb
|
||||||
|
+++ b/test/unit/bin/vagrant_test.rb
|
||||||
|
@@ -135,7 +135,7 @@ describe "vagrant bin" do
|
||||||
|
context "when vagrant is not very quiet" do
|
||||||
|
before { expect(Vagrant).to receive(:very_quiet?).and_return(false) }
|
||||||
|
|
||||||
|
- it "should output a warning" do
|
||||||
|
+ xit "should output a warning" do
|
||||||
|
expect(env.ui).to receive(:warn).with(/#{warning}/, any_args)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
@@ -143,7 +143,7 @@ describe "vagrant bin" do
|
||||||
|
context "when vagrant is very quiet" do
|
||||||
|
before { expect(Vagrant).to receive(:very_quiet?).and_return(true) }
|
||||||
|
|
||||||
|
- it "should not output a warning" do
|
||||||
|
+ xit "should not output a warning" do
|
||||||
|
expect(env.ui).not_to receive(:warn).with(/#{warning}/, any_args)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
37
0009-Disable-Subprocess-unit-test.patch
Normal file
37
0009-Disable-Subprocess-unit-test.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
From d43fe3d5c06949412ca1d798723a173bc14b9ce2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dcermak@suse.com>
|
||||||
|
Date: Wed, 28 Aug 2019 13:39:58 +0200
|
||||||
|
Subject: [PATCH 09/13] 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
|
||||||
|
scheduling oddly.
|
||||||
|
---
|
||||||
|
test/unit/vagrant/util/subprocess_test.rb | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/unit/vagrant/util/subprocess_test.rb b/test/unit/vagrant/util/subprocess_test.rb
|
||||||
|
index 0ff5835c8..757d8ef8a 100644
|
||||||
|
--- a/test/unit/vagrant/util/subprocess_test.rb
|
||||||
|
+++ b/test/unit/vagrant/util/subprocess_test.rb
|
||||||
|
@@ -124,7 +124,7 @@ describe Vagrant::Util::Subprocess do
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
- it "should return true when subprocess is running" do
|
||||||
|
+ xit "should return true when subprocess is running" do
|
||||||
|
sleep_test_commands.each do |sp|
|
||||||
|
thread = Thread.new{ sp.execute }
|
||||||
|
sleep(0.3)
|
||||||
|
@@ -155,7 +155,7 @@ describe Vagrant::Util::Subprocess do
|
||||||
|
end
|
||||||
|
|
||||||
|
context "when subprocess is running" do
|
||||||
|
- it "should return true" do
|
||||||
|
+ xit "should return true" do
|
||||||
|
sleep_test_commands.each do |sp|
|
||||||
|
thread = Thread.new{ sp.execute }
|
||||||
|
sleep(0.1)
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
28
0010-Remove-dependency-on-grpc-tools.patch
Normal file
28
0010-Remove-dependency-on-grpc-tools.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
From 5a8e538a994d8850333de713dc13f9c9f2416caa Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dcermak@suse.com>
|
||||||
|
Date: Tue, 23 Aug 2022 16:19:11 +0200
|
||||||
|
Subject: [PATCH 10/13] Remove dependency on grpc-tools
|
||||||
|
|
||||||
|
This package is only needed to build the go plugins, which we do not use at the
|
||||||
|
moment.
|
||||||
|
---
|
||||||
|
vagrant.gemspec | 3 ---
|
||||||
|
1 file changed, 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/vagrant.gemspec b/vagrant.gemspec
|
||||||
|
index 7d417b019..809500649 100644
|
||||||
|
--- a/vagrant.gemspec
|
||||||
|
+++ b/vagrant.gemspec
|
||||||
|
@@ -39,9 +39,6 @@ Gem::Specification.new do |s|
|
||||||
|
s.add_dependency "winrm-elevated", ">= 1.2.3", "< 2.0"
|
||||||
|
s.add_dependency "winrm-fs", ">= 1.3.5", "< 2.0"
|
||||||
|
|
||||||
|
- # Needed for go generate to use grpc_tools_ruby_protoc
|
||||||
|
- s.add_development_dependency "grpc-tools", "~> 1.41"
|
||||||
|
-
|
||||||
|
# required to include https://github.com/ruby/ipaddr/issues/35
|
||||||
|
s.add_dependency "ipaddr", ">= 1.2.4"
|
||||||
|
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
53
0011-Remove-vagrant-ssl-extension.patch
Normal file
53
0011-Remove-vagrant-ssl-extension.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From 2b2a008af38fcd713c7e6b6a3ba6f3c2ad1fccc8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Georg Pfuetzenreuter <georg.pfuetzenreuter@suse.com>
|
||||||
|
Date: Thu, 16 Nov 2023 13:50:07 +0100
|
||||||
|
Subject: [PATCH 11/13] Remove vagrant ssl extension
|
||||||
|
|
||||||
|
---
|
||||||
|
Rakefile | 5 -----
|
||||||
|
vagrant.gemspec | 2 --
|
||||||
|
2 files changed, 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Rakefile b/Rakefile
|
||||||
|
index 34ce6386e..2af398a1e 100644
|
||||||
|
--- a/Rakefile
|
||||||
|
+++ b/Rakefile
|
||||||
|
@@ -1,16 +1,11 @@
|
||||||
|
require 'rubygems'
|
||||||
|
require 'bundler/setup'
|
||||||
|
-require "rake/extensiontask"
|
||||||
|
|
||||||
|
# Immediately sync all stdout so that tools like buildbot can
|
||||||
|
# immediately load in the output.
|
||||||
|
$stdout.sync = true
|
||||||
|
$stderr.sync = true
|
||||||
|
|
||||||
|
-Rake::ExtensionTask.new "vagrant_ssl" do |ext|
|
||||||
|
- ext.lib_dir = "lib/vagrant"
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
# Load all the rake tasks from the "tasks" folder. This folder
|
||||||
|
# allows us to nicely separate rake tasks into individual files
|
||||||
|
# based on their role, which makes development and debugging easier
|
||||||
|
diff --git a/vagrant.gemspec b/vagrant.gemspec
|
||||||
|
index 809500649..64bc2ceb4 100644
|
||||||
|
--- a/vagrant.gemspec
|
||||||
|
+++ b/vagrant.gemspec
|
||||||
|
@@ -45,7 +45,6 @@ Gem::Specification.new do |s|
|
||||||
|
# Constraint rake to properly handle deprecated method usage
|
||||||
|
# from within rspec
|
||||||
|
s.add_development_dependency "rake", "~> 13.0"
|
||||||
|
- s.add_development_dependency "rake-compiler"
|
||||||
|
s.add_development_dependency "rspec", "~> 3.11"
|
||||||
|
s.add_development_dependency "rspec-its", "~> 1.3.0"
|
||||||
|
s.add_development_dependency "fake_ftp", "~> 0.3.0"
|
||||||
|
@@ -101,6 +100,5 @@ Gem::Specification.new do |s|
|
||||||
|
|
||||||
|
s.files = unignored_files
|
||||||
|
s.executables = unignored_files.map { |f| f[/^bin\/(.*)/, 1] }.compact
|
||||||
|
- s.extensions = ["ext/vagrant_ssl/extconf.rb"]
|
||||||
|
s.require_path = 'lib'
|
||||||
|
end
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
25
0012-Bump-rgl-dependency-to-0.6.6.patch
Normal file
25
0012-Bump-rgl-dependency-to-0.6.6.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From d4963623e8580d99f1c9db79005f89b629d616f2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dan.cermak@cgc-instruments.com>
|
||||||
|
Date: Thu, 16 Nov 2023 13:50:52 +0100
|
||||||
|
Subject: [PATCH 12/13] Bump rgl dependency to ~> 0.6.6
|
||||||
|
|
||||||
|
---
|
||||||
|
vagrant.gemspec | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/vagrant.gemspec b/vagrant.gemspec
|
||||||
|
index 64bc2ceb4..980ae4743 100644
|
||||||
|
--- a/vagrant.gemspec
|
||||||
|
+++ b/vagrant.gemspec
|
||||||
|
@@ -32,7 +32,7 @@ Gem::Specification.new do |s|
|
||||||
|
s.add_dependency "net-scp", "~> 4.0"
|
||||||
|
s.add_dependency "rb-kqueue", "~> 0.2.0"
|
||||||
|
s.add_dependency "rexml", "~> 3.2"
|
||||||
|
- s.add_dependency "rgl", "~> 0.5.10"
|
||||||
|
+ s.add_dependency "rgl", "~> 0.6.6"
|
||||||
|
s.add_dependency "rubyzip", "~> 2.3.2"
|
||||||
|
s.add_dependency "vagrant_cloud", "~> 3.0.5"
|
||||||
|
s.add_dependency "winrm", ">= 2.3.6", "< 3.0"
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
25
0013-Bump-webrick-dependency-to-1.8.0.patch
Normal file
25
0013-Bump-webrick-dependency-to-1.8.0.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 316df3ff8e3aac46ada7fa878a90b544b829c5b4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dan.cermak@cgc-instruments.com>
|
||||||
|
Date: Thu, 16 Nov 2023 14:34:36 +0100
|
||||||
|
Subject: [PATCH 13/13] Bump webrick dependency to ~> 1.8.0
|
||||||
|
|
||||||
|
---
|
||||||
|
vagrant.gemspec | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/vagrant.gemspec b/vagrant.gemspec
|
||||||
|
index 980ae4743..ef388b699 100644
|
||||||
|
--- a/vagrant.gemspec
|
||||||
|
+++ b/vagrant.gemspec
|
||||||
|
@@ -48,7 +48,7 @@ Gem::Specification.new do |s|
|
||||||
|
s.add_development_dependency "rspec", "~> 3.11"
|
||||||
|
s.add_development_dependency "rspec-its", "~> 1.3.0"
|
||||||
|
s.add_development_dependency "fake_ftp", "~> 0.3.0"
|
||||||
|
- s.add_development_dependency "webrick", "~> 1.7.0"
|
||||||
|
+ s.add_development_dependency "webrick", "~> 1.8.0"
|
||||||
|
|
||||||
|
# The following block of code determines the files that should be included
|
||||||
|
# in the gem. It does this by reading all the files in the directory where
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
26
0014-Bump-vagrant_cloud_dependency.patch
Normal file
26
0014-Bump-vagrant_cloud_dependency.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 430bd45e3df6a42c2b8a45bf43036e17a210f74d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Johannes Kastl <git@johannes-kastl.de>
|
||||||
|
Date: Mon, 12 Feb 2024 06:40:48 +0100
|
||||||
|
Subject: [PATCH] vagrant.gemspec: vagrant_cloud ~> 3.0
|
||||||
|
|
||||||
|
Signed-off-by: Johannes Kastl <git@johannes-kastl.de>
|
||||||
|
---
|
||||||
|
vagrant.gemspec | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/vagrant.gemspec b/vagrant.gemspec
|
||||||
|
index ef388b699..82280c1fe 100644
|
||||||
|
--- a/vagrant.gemspec
|
||||||
|
+++ b/vagrant.gemspec
|
||||||
|
@@ -34,7 +34,7 @@ Gem::Specification.new do |s|
|
||||||
|
s.add_dependency "rexml", "~> 3.2"
|
||||||
|
s.add_dependency "rgl", "~> 0.6.6"
|
||||||
|
s.add_dependency "rubyzip", "~> 2.3.2"
|
||||||
|
- s.add_dependency "vagrant_cloud", "~> 3.0.5"
|
||||||
|
+ s.add_dependency "vagrant_cloud", "~> 3.0"
|
||||||
|
s.add_dependency "winrm", ">= 2.3.6", "< 3.0"
|
||||||
|
s.add_dependency "winrm-elevated", ">= 1.2.3", "< 2.0"
|
||||||
|
s.add_dependency "winrm-fs", ">= 1.3.5", "< 2.0"
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
63
README.SUSE
Normal file
63
README.SUSE
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
Packaging Vagrant plugins
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
This convention is based on the Fedora vagrant package.
|
||||||
|
|
||||||
|
Vagrant plugins are ordinary rubygems, but they should not be packaged as
|
||||||
|
these. First off all, we don't need to build the plugin with a ruby version
|
||||||
|
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 ruby26
|
||||||
|
%global rb_build_abi ruby:2.6.0
|
||||||
|
%global rb_ruby_suffix ruby2.6
|
||||||
|
|
||||||
|
Name: vagrant-MYPLUGIN
|
||||||
|
Version: $VERSION
|
||||||
|
Release: 0
|
||||||
|
%define mod_name %{name}
|
||||||
|
%define mod_full_name %{mod_name}-%{version}
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
BuildRequires: %{rubygem gem2rpm}
|
||||||
|
BuildRequires: %{ruby}
|
||||||
|
BuildRequires: ruby-macros >= 5
|
||||||
|
|
||||||
|
BuildRequires: vagrant
|
||||||
|
BuildArch: noarch
|
||||||
|
Url: $URL
|
||||||
|
Source: $SRC
|
||||||
|
Source1: gem2rpm.yml
|
||||||
|
Summary: $SUMMARY
|
||||||
|
License: $LICENSE
|
||||||
|
|
||||||
|
%description
|
||||||
|
$DESCRIPTION
|
||||||
|
|
||||||
|
%global vagrant_plugin_name %{name}
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%gem_unpack
|
||||||
|
|
||||||
|
%build
|
||||||
|
%gem_build
|
||||||
|
|
||||||
|
%install
|
||||||
|
%vagrant_plugin_install
|
||||||
|
|
||||||
|
%files
|
||||||
|
%{vagrant_plugin_instdir}
|
||||||
|
%{vagrant_plugin_cache}
|
||||||
|
%{vagrant_plugin_spec}
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
|
||||||
|
```
|
60
binstub
Normal file
60
binstub
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# This is a wrapper to properly execute Vagrant within the embedded
|
||||||
|
# Vagrant installation directory. This sets up proper environment variables
|
||||||
|
# so that everything loads and compiles to proper directories.
|
||||||
|
|
||||||
|
# Load defaults, especially VAGRANT_PREFERRED_PROVIDERS
|
||||||
|
if [ -r /etc/default/vagrant ]; then
|
||||||
|
source /etc/default/vagrant
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Export gem paths so that we use the isolated gems.
|
||||||
|
export GEM_PATH="@ruby_vagrant_gem_path@"
|
||||||
|
|
||||||
|
# Export GEM_HOME based on VAGRANT_HOME
|
||||||
|
#
|
||||||
|
# This needs to be set because Bundler includes gem paths
|
||||||
|
# from RubyGems' Gem.paths.
|
||||||
|
VAGRANT_HOME=${VAGRANT_HOME:-~/.vagrant.d}
|
||||||
|
export GEM_HOME="$VAGRANT_HOME/gems"
|
||||||
|
|
||||||
|
|
||||||
|
# SSL certs
|
||||||
|
# export SSL_CERT_FILE="${SSL_CERT_FILE:-/etc/pki/tls/cert.pem}"
|
||||||
|
|
||||||
|
# Export an enviroment variable to say we're in a Vagrant
|
||||||
|
# installer created environment.
|
||||||
|
export VAGRANT_INSTALLER_ENV=1
|
||||||
|
# This is currently used only in Vagrant::Plugin::Manager.system_plugins_file
|
||||||
|
# to locate plugins configuration file.
|
||||||
|
export VAGRANT_INSTALLER_EMBEDDED_DIR="@vagrant_embedded_dir@"
|
||||||
|
export VAGRANT_INSTALLER_VERSION="2"
|
||||||
|
|
||||||
|
# Determine the OS that we're on, which is used in some later checks.
|
||||||
|
# It is very important we do this _before_ setting the PATH below
|
||||||
|
# because uname dependencies can conflict on some platforms.
|
||||||
|
OS=$(uname -s 2>/dev/null)
|
||||||
|
|
||||||
|
# Export the OS as an environment variable that Vagrant can access
|
||||||
|
# so that it can behave better.
|
||||||
|
export VAGRANT_DETECTED_OS="${OS}"
|
||||||
|
|
||||||
|
# Export the VAGRANT_EXECUTABLE so that pre-rubygems can optimize a bit
|
||||||
|
export VAGRANT_EXECUTABLE="${VAGRANT_INSTALLER_EMBEDDED_DIR}/gems/bin/vagrant"
|
||||||
|
|
||||||
|
# Set providers' preferred order(priority) if not already set
|
||||||
|
if [ -z ${VAGRANT_PREFERRED_PROVIDERS+empty} ]; then
|
||||||
|
VAGRANT_PREFERRED_PROVIDERS=libvirt,docker
|
||||||
|
fi
|
||||||
|
export VAGRANT_PREFERRED_PROVIDERS
|
||||||
|
|
||||||
|
# Don't allow symlink in shared folders by default, the user can override it if
|
||||||
|
# they really want to (this is a security risk)
|
||||||
|
if [ -z "$VAGRANT_DISABLE_VBOXSYMLINKCREATE" ]; then
|
||||||
|
VAGRANT_DISABLE_VBOXSYMLINKCREATE=1
|
||||||
|
fi
|
||||||
|
export VAGRANT_DISABLE_VBOXSYMLINKCREATE
|
||||||
|
|
||||||
|
# Call the actual Vagrant bin with our arguments
|
||||||
|
exec /usr/bin/ruby.@vagrant_rb_ruby_suffix@ "${VAGRANT_EXECUTABLE}" "$@"
|
12
childprocess-5.0.patch
Normal file
12
childprocess-5.0.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff -Pdpru vagrant-2.3.7.orig/vagrant.gemspec vagrant-2.3.7/vagrant.gemspec
|
||||||
|
--- vagrant-2.3.7.orig/vagrant.gemspec 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/vagrant.gemspec 2024-02-27 22:06:34.169040881 +0300
|
||||||
|
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
|
||||||
|
s.required_rubygems_version = ">= 1.3.6"
|
||||||
|
|
||||||
|
s.add_dependency "bcrypt_pbkdf", "~> 1.1"
|
||||||
|
- s.add_dependency "childprocess", "~> 4.1.0"
|
||||||
|
+ s.add_dependency "childprocess", "~> 5.0.0"
|
||||||
|
s.add_dependency "ed25519", "~> 1.3.0"
|
||||||
|
s.add_dependency "erubi"
|
||||||
|
s.add_dependency 'googleapis-common-protos-types', '~> 1.3'
|
71
dependency.patch
Normal file
71
dependency.patch
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
diff -Pdpru vagrant-2.3.7.orig/Rakefile vagrant-2.3.7/Rakefile
|
||||||
|
--- vagrant-2.3.7.orig/Rakefile 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/Rakefile 2024-09-04 19:08:07.179627994 +0300
|
||||||
|
@@ -1,16 +1,11 @@
|
||||||
|
require 'rubygems'
|
||||||
|
require 'bundler/setup'
|
||||||
|
-require "rake/extensiontask"
|
||||||
|
|
||||||
|
# Immediately sync all stdout so that tools like buildbot can
|
||||||
|
# immediately load in the output.
|
||||||
|
$stdout.sync = true
|
||||||
|
$stderr.sync = true
|
||||||
|
|
||||||
|
-Rake::ExtensionTask.new "vagrant_ssl" do |ext|
|
||||||
|
- ext.lib_dir = "lib/vagrant"
|
||||||
|
-end
|
||||||
|
-
|
||||||
|
# Load all the rake tasks from the "tasks" folder. This folder
|
||||||
|
# allows us to nicely separate rake tasks into individual files
|
||||||
|
# based on their role, which makes development and debugging easier
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/vagrant.gemspec vagrant-2.3.7/vagrant.gemspec
|
||||||
|
--- vagrant-2.3.7.orig/vagrant.gemspec 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/vagrant.gemspec 2024-09-04 20:41:17.907561815 +0300
|
||||||
|
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
|
||||||
|
s.required_rubygems_version = ">= 1.3.6"
|
||||||
|
|
||||||
|
s.add_dependency "bcrypt_pbkdf", "~> 1.1"
|
||||||
|
- s.add_dependency "childprocess", "~> 4.1.0"
|
||||||
|
+ s.add_dependency "childprocess", "~> 5.0"
|
||||||
|
s.add_dependency "ed25519", "~> 1.3.0"
|
||||||
|
s.add_dependency "erubi"
|
||||||
|
s.add_dependency 'googleapis-common-protos-types', '~> 1.3'
|
||||||
|
@@ -32,28 +32,23 @@ Gem::Specification.new do |s|
|
||||||
|
s.add_dependency "net-scp", "~> 4.0"
|
||||||
|
s.add_dependency "rb-kqueue", "~> 0.2.0"
|
||||||
|
s.add_dependency "rexml", "~> 3.2"
|
||||||
|
- s.add_dependency "rgl", "~> 0.5.10"
|
||||||
|
+ s.add_dependency "rgl", "~> 0.6"
|
||||||
|
s.add_dependency "rubyzip", "~> 2.3.2"
|
||||||
|
- s.add_dependency "vagrant_cloud", "~> 3.0.5"
|
||||||
|
- s.add_dependency "wdm", "~> 0.1.1"
|
||||||
|
+ s.add_dependency "vagrant_cloud", "~> 3.0"
|
||||||
|
s.add_dependency "winrm", ">= 2.3.6", "< 3.0"
|
||||||
|
s.add_dependency "winrm-elevated", ">= 1.2.3", "< 2.0"
|
||||||
|
s.add_dependency "winrm-fs", ">= 1.3.5", "< 2.0"
|
||||||
|
|
||||||
|
- # Needed for go generate to use grpc_tools_ruby_protoc
|
||||||
|
- s.add_development_dependency "grpc-tools", "~> 1.41"
|
||||||
|
-
|
||||||
|
# required to include https://github.com/ruby/ipaddr/issues/35
|
||||||
|
s.add_dependency "ipaddr", ">= 1.2.4"
|
||||||
|
|
||||||
|
# Constraint rake to properly handle deprecated method usage
|
||||||
|
# from within rspec
|
||||||
|
s.add_development_dependency "rake", "~> 13.0"
|
||||||
|
- s.add_development_dependency "rake-compiler"
|
||||||
|
s.add_development_dependency "rspec", "~> 3.11"
|
||||||
|
s.add_development_dependency "rspec-its", "~> 1.3.0"
|
||||||
|
s.add_development_dependency "fake_ftp", "~> 0.3.0"
|
||||||
|
- s.add_development_dependency "webrick", "~> 1.7.0"
|
||||||
|
+ s.add_development_dependency "webrick", "~> 1.8"
|
||||||
|
|
||||||
|
# The following block of code determines the files that should be included
|
||||||
|
# in the gem. It does this by reading all the files in the directory where
|
||||||
|
@@ -105,6 +100,5 @@ Gem::Specification.new do |s|
|
||||||
|
|
||||||
|
s.files = unignored_files
|
||||||
|
s.executables = unignored_files.map { |f| f[/^bin\/(.*)/, 1] }.compact
|
||||||
|
- s.extensions = ["ext/vagrant_ssl/extconf.rb"]
|
||||||
|
s.require_path = 'lib'
|
||||||
|
end
|
44
macros.vagrant
Normal file
44
macros.vagrant
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# stolen from Fedora's package
|
||||||
|
%vagrant_embedded_dir %{_datadir}/%{name}
|
||||||
|
%vagrant_dir %{vagrant_embedded_dir}/gems/gems/%{name}-%{version}
|
||||||
|
|
||||||
|
# Common locations for Vagrant plugin gems
|
||||||
|
%vagrant_plugin_dir %{vagrant_embedded_dir}/gems
|
||||||
|
%vagrant_plugin_instdir %{vagrant_plugin_dir}/gems/%{vagrant_plugin_name}-%{version}
|
||||||
|
%vagrant_plugin_libdir %{vagrant_plugin_instdir}/lib
|
||||||
|
%vagrant_plugin_cache %{vagrant_plugin_dir}/cache/%{vagrant_plugin_name}-%{version}.gem
|
||||||
|
%vagrant_plugin_spec %{vagrant_plugin_dir}/specifications/%{vagrant_plugin_name}-%{version}.gemspec
|
||||||
|
%vagrant_plugin_docdir %{vagrant_plugin_dir}/doc/%{vagrant_plugin_name}-%{version}
|
||||||
|
|
||||||
|
%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<vagrant_plugin_file> Overrides gem file name for installation.
|
||||||
|
# -d<install_dir> Set installation directory.
|
||||||
|
%vagrant_plugin_install(d:n:) \
|
||||||
|
if [ "%{expand:%rb_build_versions}" != "%vagrant_rb_build_versions" ]; then \
|
||||||
|
echo "Vagrant ruby version does not match %{vagrant_plugin_name}'s ruby version" \
|
||||||
|
exit 1 \
|
||||||
|
fi \
|
||||||
|
mkdir -p %{-d*}%{!?-d:%{buildroot}%{vagrant_plugin_dir}} \
|
||||||
|
\
|
||||||
|
CONFIGURE_ARGS="--with-cflags='%{optflags}' $CONFIGURE_ARGS" \\\
|
||||||
|
%gem_binary install \\\
|
||||||
|
-V \\\
|
||||||
|
--local \\\
|
||||||
|
--no-user-install \\\
|
||||||
|
--install-dir %{-d*}%{!?-d:%{buildroot}%{vagrant_plugin_dir}} \\\
|
||||||
|
--bindir %{buildroot}%{_bindir} \\\
|
||||||
|
--ignore-dependencies \\\
|
||||||
|
--force \\\
|
||||||
|
--document=rdoc,ri \\\
|
||||||
|
--backtrace \\\
|
||||||
|
%{-n*}%{!?-n:%{vagrant_plugin_name}-%{version}/%{vagrant_plugin_name}-%{version}.gem} \
|
||||||
|
%{nil}
|
||||||
|
|
||||||
|
%vagrant_rb_build_versions %{rb_build_versions}
|
||||||
|
%vagrant_rb_build_abi %{rb_build_abi}
|
||||||
|
%vagrant_rb_ruby_suffix %{rb_ruby_suffix}
|
84
ruby-3.3.patch
Normal file
84
ruby-3.3.patch
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
diff -Pdpru vagrant-2.3.7.orig/.github/workflows/go-spectest-skipped.yml vagrant-2.3.7/.github/workflows/go-spectest-skipped.yml
|
||||||
|
--- vagrant-2.3.7.orig/.github/workflows/go-spectest-skipped.yml 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/.github/workflows/go-spectest-skipped.yml 2024-01-19 02:27:59.974880099 +0300
|
||||||
|
@@ -15,7 +15,7 @@ jobs:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
- ruby: ['3.0', '3.1', '3.2']
|
||||||
|
+ ruby: ['3.0', '3.1', '3.2', '3.3']
|
||||||
|
name: Vagrant acceptance tests (Ruby ${{ matrix.ruby }})
|
||||||
|
steps:
|
||||||
|
- name: Stubbed for skip
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/.github/workflows/go-spectest.yml vagrant-2.3.7/.github/workflows/go-spectest.yml
|
||||||
|
--- vagrant-2.3.7.orig/.github/workflows/go-spectest.yml 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/.github/workflows/go-spectest.yml 2024-01-19 02:28:23.911891525 +0300
|
||||||
|
@@ -19,7 +19,7 @@ jobs:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
- ruby: ['3.0', '3.1', '3.2']
|
||||||
|
+ ruby: ['3.0', '3.1', '3.2', '3.3']
|
||||||
|
name: Vagrant acceptance tests (Ruby ${{ matrix.ruby }})
|
||||||
|
steps:
|
||||||
|
- name: Code Checkout
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/.github/workflows/go-testing-skipped.yml vagrant-2.3.7/.github/workflows/go-testing-skipped.yml
|
||||||
|
--- vagrant-2.3.7.orig/.github/workflows/go-testing-skipped.yml 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/.github/workflows/go-testing-skipped.yml 2024-01-19 02:28:43.102167235 +0300
|
||||||
|
@@ -14,7 +14,7 @@ jobs:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
- ruby: ['3.0', '3.1', '3.2']
|
||||||
|
+ ruby: ['3.0', '3.1', '3.2', '3.3']
|
||||||
|
name: Vagrant unit tests on Go (Ruby ${{ matrix.ruby }})
|
||||||
|
steps:
|
||||||
|
- name: Stubbed for skip
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/.github/workflows/go-testing.yml vagrant-2.3.7/.github/workflows/go-testing.yml
|
||||||
|
--- vagrant-2.3.7.orig/.github/workflows/go-testing.yml 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/.github/workflows/go-testing.yml 2024-01-19 02:29:05.385820685 +0300
|
||||||
|
@@ -26,7 +26,7 @@ jobs:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
- ruby: ['3.0', '3.1', '3.2']
|
||||||
|
+ ruby: ['3.0', '3.1', '3.2', '3.3']
|
||||||
|
name: Vagrant unit tests on Go (Ruby ${{ matrix.ruby }})
|
||||||
|
steps:
|
||||||
|
- name: Code Checkout
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/.github/workflows/testing-skipped.yml vagrant-2.3.7/.github/workflows/testing-skipped.yml
|
||||||
|
--- vagrant-2.3.7.orig/.github/workflows/testing-skipped.yml 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/.github/workflows/testing-skipped.yml 2024-01-19 02:31:50.474858960 +0300
|
||||||
|
@@ -19,7 +19,7 @@ jobs:
|
||||||
|
continue-on-error: true
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
- ruby: [ '3.0', '3.1', '3.2' ]
|
||||||
|
+ ruby: [ '3.0', '3.1', '3.2', '3.3' ]
|
||||||
|
name: Vagrant unit tests on Ruby ${{ matrix.ruby }}
|
||||||
|
steps:
|
||||||
|
- name: Stubbed for skip
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/.github/workflows/testing.yml vagrant-2.3.7/.github/workflows/testing.yml
|
||||||
|
--- vagrant-2.3.7.orig/.github/workflows/testing.yml 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/.github/workflows/testing.yml 2024-01-19 02:32:17.978587414 +0300
|
||||||
|
@@ -32,7 +32,7 @@ jobs:
|
||||||
|
continue-on-error: true
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
- ruby: [ '3.0', '3.1', '3.2' ]
|
||||||
|
+ ruby: [ '3.0', '3.1', '3.2', '3.3' ]
|
||||||
|
name: Vagrant unit tests on Ruby ${{ matrix.ruby }}
|
||||||
|
steps:
|
||||||
|
- name: Code Checkout
|
||||||
|
diff -Pdpru vagrant-2.3.7.orig/vagrant.gemspec vagrant-2.3.7/vagrant.gemspec
|
||||||
|
--- vagrant-2.3.7.orig/vagrant.gemspec 2023-06-15 23:40:35.000000000 +0300
|
||||||
|
+++ vagrant-2.3.7/vagrant.gemspec 2024-01-19 02:33:37.299726955 +0300
|
||||||
|
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
|
||||||
|
s.summary = "Build and distribute virtualized development environments."
|
||||||
|
s.description = "Vagrant is a tool for building and distributing virtualized development environments."
|
||||||
|
|
||||||
|
- s.required_ruby_version = ">= 3.0", "< 3.3"
|
||||||
|
+ s.required_ruby_version = ">= 3.0", "< 3.4"
|
||||||
|
s.required_rubygems_version = ">= 1.3.6"
|
||||||
|
|
||||||
|
s.add_dependency "bcrypt_pbkdf", "~> 1.1"
|
3
vagrant-2.3.7.tar.gz
Normal file
3
vagrant-2.3.7.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fa8a96319aa7b9ff5f4a991b77cbf37f549549d84737624bcebefa8f2004bf45
|
||||||
|
size 3296042
|
68
vagrant.1
Normal file
68
vagrant.1
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
.TH VAGRANT "1" "January 2014" "Vagrant 1.4.3" "User Commands"
|
||||||
|
.SH NAME
|
||||||
|
Vagrant \- Tool for building and distributing virtualized development environments.
|
||||||
|
.SH SYNOPSIS
|
||||||
|
.B vagrant
|
||||||
|
[\fI-v\fR] [\fI-h\fR] \fIcommand \fR[\fI<args>\fR]
|
||||||
|
.SH DESCRIPTION
|
||||||
|
Vagrant is a tool for building and distributing virtualized development environments.
|
||||||
|
|
||||||
|
Vagrant provides the framework and configuration format to create and manage complete portable development environments. These development environments can live on your computer or in the cloud, and are portable between Windows, Mac OS X, and Linux.
|
||||||
|
.SH OPTIONS
|
||||||
|
.TP
|
||||||
|
\fB\-v\fR, \fB\-\-version\fR
|
||||||
|
Print the version and exit.
|
||||||
|
.TP
|
||||||
|
\fB\-h\fR, \fB\-\-help\fR
|
||||||
|
Print this help.
|
||||||
|
.SS "Available subcommands:"
|
||||||
|
.TP
|
||||||
|
\fIbox\fR
|
||||||
|
manages boxes: installation, removal, etc.
|
||||||
|
.TP
|
||||||
|
\fIdestroy\fR
|
||||||
|
stops and deletes all traces of the vagrant machine
|
||||||
|
.TP
|
||||||
|
\fIhalt\fR
|
||||||
|
stops the vagrant machine
|
||||||
|
.TP
|
||||||
|
\fIhelp\fR
|
||||||
|
shows the help for a subcommand
|
||||||
|
.TP
|
||||||
|
\fIinit\fR
|
||||||
|
initializes a new Vagrant environment by creating a Vagrantfile
|
||||||
|
.TP
|
||||||
|
\fIpackage\fR
|
||||||
|
packages a running vagrant environment into a box
|
||||||
|
.TP
|
||||||
|
\fIplugin\fR
|
||||||
|
manages plugins: \fBinstall\fR, \fBuninstall\fR, \fBupdate\fR, etc.
|
||||||
|
.TP
|
||||||
|
\fIprovision\fR
|
||||||
|
provisions the vagrant machine
|
||||||
|
.TP
|
||||||
|
\fIreload\fR
|
||||||
|
restarts vagrant machine, loads new Vagrantfile configuration
|
||||||
|
.TP
|
||||||
|
\fIresume\fR
|
||||||
|
resume a suspended vagrant machine
|
||||||
|
.TP
|
||||||
|
\fIssh\fR
|
||||||
|
connects to machine via SSH
|
||||||
|
.TP
|
||||||
|
\fIssh\-config\fR
|
||||||
|
outputs OpenSSH valid configuration to connect to the machine
|
||||||
|
.TP
|
||||||
|
\fIstatus\fR
|
||||||
|
outputs status of the vagrant machine
|
||||||
|
.TP
|
||||||
|
\fIsuspend\fR
|
||||||
|
suspends the machine
|
||||||
|
.TP
|
||||||
|
\fIup\fR
|
||||||
|
starts and provisions the vagrant environment
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
Mitchell Hashimoto <mitchell.hashimoto@gmail.com>
|
||||||
|
.SH "SEE ALSO"
|
||||||
|
For help on any individual command run \fBvagrant \fICOMMAND \fB\-h\fR
|
2198
vagrant.changes
Normal file
2198
vagrant.changes
Normal file
File diff suppressed because it is too large
Load Diff
494
vagrant.spec
Normal file
494
vagrant.spec
Normal file
@ -0,0 +1,494 @@
|
|||||||
|
#
|
||||||
|
# spec file for package vagrant
|
||||||
|
#
|
||||||
|
# Copyright (c) 2024 SUSE LLC
|
||||||
|
# Copyright (c) 2012 Laurent Bigonville <bigon@debian.org>, License GPL-2.0+
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%{bcond_without tests}
|
||||||
|
|
||||||
|
%global rb_build_versions %rb_default_ruby
|
||||||
|
%global rb_build_abi %rb_default_ruby_abi
|
||||||
|
%global rb_ruby_suffix %rb_default_ruby_suffix
|
||||||
|
#
|
||||||
|
%global mod_name vagrant
|
||||||
|
%global mod_full_name %{mod_name}-%{version}
|
||||||
|
%global vim_data_dir %{_datadir}/vim/site/plugin/
|
||||||
|
|
||||||
|
Name: vagrant
|
||||||
|
Version: 2.3.7
|
||||||
|
Release: 0
|
||||||
|
Summary: Tool for building and distributing virtualized development environments
|
||||||
|
License: MIT
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
URL: https://github.com/hashicorp/vagrant
|
||||||
|
Source0: https://github.com/hashicorp/vagrant/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||||
|
Source11: vagrant.1
|
||||||
|
Source93: vagrant_transfiletriggerin.rb
|
||||||
|
Source94: vagrant_transfiletriggerun.rb
|
||||||
|
Source95: vagrant_post.rb
|
||||||
|
Source96: binstub
|
||||||
|
Source97: macros.vagrant
|
||||||
|
Source98: README.SUSE
|
||||||
|
Provides: rubygem-vagrant = %{version}
|
||||||
|
Obsoletes: rubygem-vagrant < %{version}
|
||||||
|
Recommends: vagrant-libvirt
|
||||||
|
#
|
||||||
|
# Patches are maintained in the opensuse_package branch in the
|
||||||
|
# https://github.com/dcermak/vagrant.git repository.
|
||||||
|
# On every new release of vagrant, rebase them on top of the latest tag.
|
||||||
|
#
|
||||||
|
Patch0: ruby-3.3.patch
|
||||||
|
Patch1: 0001-bin-vagrant-silence-warning-about-installer.patch
|
||||||
|
Patch2: 0002-Use-a-private-temporary-dir.patch
|
||||||
|
Patch3: 0003-plugins-don-t-abuse-require_relative.patch.patch
|
||||||
|
Patch4: 0004-fix-vbox-package-boo-1044087-added-by-robert.muntean.patch
|
||||||
|
Patch5: dependency.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
|
||||||
|
|
||||||
|
# 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
|
||||||
|
%global rb_build_versions %rb_default_ruby
|
||||||
|
%global rb_build_abi %rb_default_ruby_abi
|
||||||
|
%global rb_ruby_suffix %rb_default_ruby_suffix
|
||||||
|
|
||||||
|
# we use the rpm macros in this spec
|
||||||
|
# need to load them *after* defining the rb_* macros
|
||||||
|
%{load:%{SOURCE97}}
|
||||||
|
|
||||||
|
%global vagrant_plugin_name vagrant
|
||||||
|
|
||||||
|
#===============================================================================
|
||||||
|
# Build dependencies
|
||||||
|
#===============================================================================
|
||||||
|
|
||||||
|
BuildRequires: %{rubygem bundler}
|
||||||
|
BuildRequires: %{ruby} >= 3.0, %{ruby} < 3.4
|
||||||
|
# s.add_dependency "bcrypt_pbkdf", "~> 1.1"
|
||||||
|
BuildRequires: %{rubygem bcrypt_pbkdf:1 >= 1.1 }
|
||||||
|
# s.add_dependency "childprocess", "~> 5.0"
|
||||||
|
BuildRequires: %{rubygem childprocess:5.0 }
|
||||||
|
# s.add_dependency "ed25519", "~> 1.3.0"
|
||||||
|
BuildRequires: %{rubygem ed25519:1.3 >= 1.3.0 }
|
||||||
|
# s.add_dependency "erubi"
|
||||||
|
BuildRequires: %{rubygem erubi }
|
||||||
|
# s.add_dependency 'googleapis-common-protos-types', '~> 1.3'
|
||||||
|
BuildRequires: %{rubygem googleapis-common-protos-types:1 >= 1.3}
|
||||||
|
# s.add_dependency "grpc"
|
||||||
|
BuildRequires: %{rubygem grpc}
|
||||||
|
# s.add_dependency "i18n", "~> 1.8"
|
||||||
|
BuildRequires: %{rubygem i18n:1 >= 1.8 }
|
||||||
|
# s.add_dependency "listen", "~> 3.6"
|
||||||
|
BuildRequires: %{rubygem listen:3 >= 3.6 }
|
||||||
|
# s.add_dependency "hashicorp-checkpoint", "~> 0.1.5"
|
||||||
|
BuildRequires: %{rubygem hashicorp-checkpoint:0.1 >= 0.1.5 }
|
||||||
|
# s.add_dependency "log4r", "~> 1.1.9", "< 1.1.11"
|
||||||
|
BuildRequires: %{rubygem log4r:1.1 >= 1.1.9 }
|
||||||
|
BuildConflicts: %{rubygem log4r:1.1 >= 1.1.11 }
|
||||||
|
# s.add_dependency "mime-types", "~> 3.3"
|
||||||
|
BuildRequires: %{rubygem mime-types:3 >= 3.3 }
|
||||||
|
# s.add_dependency "net-ftp", "~> 0.1"
|
||||||
|
BuildRequires: %{rubygem net-ftp:0 >= 0.1 }
|
||||||
|
# s.add_dependency "net-ssh", "~> 7.0"
|
||||||
|
BuildRequires: %{rubygem net-ssh:7 }
|
||||||
|
# s.add_dependency "net-sftp", "~> 4.0"
|
||||||
|
BuildRequires: %{rubygem net-sftp:4 }
|
||||||
|
# s.add_dependency "net-scp", "~> 4.0"
|
||||||
|
BuildRequires: %{rubygem net-scp:4 }
|
||||||
|
# s.add_dependency "rb-kqueue", "~> 0.2.0"
|
||||||
|
BuildRequires: %{rubygem rb-kqueue:0.2 }
|
||||||
|
# s.add_dependency "rexml", "~> 3.2"
|
||||||
|
BuildRequires: %{rubygem rexml:3 >= 3.2 }
|
||||||
|
# PATCHED
|
||||||
|
# s.add_dependency "rgl", "~> 0.6.6"
|
||||||
|
BuildRequires: %{rubygem rgl:0.6 >= 0.6.6}
|
||||||
|
# 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.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 }
|
||||||
|
# Patched in 0014-Bump-vagrant_cloud_dependency.patch
|
||||||
|
# s.add_dependency "vagrant_cloud", "~> 3.0"
|
||||||
|
BuildRequires: %{rubygem vagrant_cloud:3 >= 3.0 }
|
||||||
|
|
||||||
|
# PATCHED -> removed
|
||||||
|
# s.add_development_dependency "grpc-tools", "~> 1.41.1"
|
||||||
|
# BuildRequires: %%{rubygem grpc-tools:1.41 >= 1.41.1}
|
||||||
|
|
||||||
|
# devel dependencies:
|
||||||
|
# s.add_development_dependency "rake", "~> 13.0"
|
||||||
|
BuildRequires: %{rubygem rake:13 }
|
||||||
|
# s.add_development_dependency "rspec", "~> 3.11"
|
||||||
|
BuildRequires: %{rubygem rspec:3 >= 3.11 }
|
||||||
|
# s.add_development_dependency "rspec-its", "~> 1.3.0"
|
||||||
|
BuildRequires: %{rubygem rspec-its:1.3 }
|
||||||
|
# s.add_development_dependency "fake_ftp", "~> 0.3.0"
|
||||||
|
BuildRequires: %{rubygem fake_ftp:0.3 >= 0.3.0 }
|
||||||
|
# PATCHED
|
||||||
|
# s.add_development_dependency "webrick", "~> 1.8"
|
||||||
|
BuildRequires: %{rubygem webrick:1.8 }
|
||||||
|
|
||||||
|
# Prevent have choice for rubygem(ruby:2.6.0:mime-types) >= 2
|
||||||
|
BuildRequires: %{rubygem mime-types:3 }
|
||||||
|
# Prevent have choice for rubygem(ruby:2.6.0:builder) >= 2.1.2
|
||||||
|
BuildRequires: %{rubygem builder:3.3 }
|
||||||
|
# Prevent have choice for rubygem(ruby:2.6.0:ffi:1) >= 1
|
||||||
|
BuildRequires: %{rubygem ffi >= 1.9 }
|
||||||
|
# Prevent have choice for rubygem(ruby:2.5.0:addressable) >= 2.3.6
|
||||||
|
BuildRequires: %{rubygem addressable >= 2.7}
|
||||||
|
|
||||||
|
# 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
|
||||||
|
%if %{with tests}
|
||||||
|
BuildRequires: %{rubygem vagrant-spec}
|
||||||
|
BuildRequires: bsdtar
|
||||||
|
BuildRequires: curl
|
||||||
|
BuildRequires: openssh
|
||||||
|
%endif
|
||||||
|
|
||||||
|
BuildRequires: fdupes
|
||||||
|
|
||||||
|
#===============================================================================
|
||||||
|
# Runtime dependencies
|
||||||
|
#===============================================================================
|
||||||
|
|
||||||
|
# s.add_dependency "bcrypt_pbkdf", "~> 1.1"
|
||||||
|
Requires: %{rubygem bcrypt_pbkdf:1 >= 1.1 }
|
||||||
|
# s.add_dependency "childprocess", "~> 5.0"
|
||||||
|
Requires: %{rubygem childprocess:5.0}
|
||||||
|
# s.add_dependency "ed25519", "~> 1.3.0"
|
||||||
|
Requires: %{rubygem ed25519:1.3 >= 1.3.0}
|
||||||
|
# s.add_dependency "erubi"
|
||||||
|
Requires: %{rubygem erubi}
|
||||||
|
# s.add_dependency 'googleapis-common-protos-types', '~> 1.3'
|
||||||
|
Requires: %{rubygem googleapis-common-protos-types:1 >= 1.3}
|
||||||
|
# s.add_dependency "grpc"
|
||||||
|
Requires: %{rubygem grpc}
|
||||||
|
# s.add_dependency "i18n", "~> 1.8"
|
||||||
|
Requires: %{rubygem i18n:1 >= 1.8}
|
||||||
|
# s.add_dependency "listen", "~> 3.6"
|
||||||
|
Requires: %{rubygem listen:3 >= 3.6}
|
||||||
|
# s.add_dependency "hashicorp-checkpoint", "~> 0.1.5"
|
||||||
|
Requires: %{rubygem hashicorp-checkpoint:0.1 >= 0.1.5}
|
||||||
|
# s.add_dependency "log4r", "~> 1.1.9", "< 1.1.11"
|
||||||
|
Requires: %{rubygem log4r:1.1 >= 1.1.9 }
|
||||||
|
Requires: %{rubygem log4r:1.1 < 1.1.11 }
|
||||||
|
# s.add_dependency "mime-types", "~> 3.3"
|
||||||
|
Requires: %{rubygem mime-types:3 >= 3.3}
|
||||||
|
# s.add_dependency "net-ftp", "~> 0.1"
|
||||||
|
BuildRequires: %{rubygem net-ftp:0 >= 0.1 }
|
||||||
|
# s.add_dependency "net-ssh", "~> 7.0"
|
||||||
|
Requires: %{rubygem net-ssh:7 }
|
||||||
|
# s.add_dependency "net-sftp", "~> 4.0"
|
||||||
|
Requires: %{rubygem net-sftp:4 }
|
||||||
|
# s.add_dependency "net-scp", "~> 4.0"
|
||||||
|
Requires: %{rubygem net-scp:4 }
|
||||||
|
# s.add_dependency "rb-kqueue", "~> 0.2.0"
|
||||||
|
Requires: %{rubygem rb-kqueue:0.2}
|
||||||
|
# s.add_dependency "rexml", "~> 3.2"
|
||||||
|
Requires: %{rubygem rexml:3 >= 3.2 }
|
||||||
|
# PATCHED
|
||||||
|
# s.add_dependency "rgl", "~> 0.6.6"
|
||||||
|
Requires: %{rubygem rgl:0.6 >= 0.6.6}
|
||||||
|
# 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.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}
|
||||||
|
# Patched in 0014-Bump-vagrant_cloud_dependency.patch
|
||||||
|
# s.add_dependency "vagrant_cloud", "~> 3.0"
|
||||||
|
Requires: %{rubygem vagrant_cloud:3 >= 3.0}
|
||||||
|
|
||||||
|
|
||||||
|
Requires: bsdtar
|
||||||
|
Requires: curl
|
||||||
|
Requires: openssh
|
||||||
|
# for groupadd
|
||||||
|
Requires(pre): shadow
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description
|
||||||
|
Vagrant is a tool for building and distributing virtualized development
|
||||||
|
environments.
|
||||||
|
|
||||||
|
%package doc
|
||||||
|
Summary: Documentation for Vagrant
|
||||||
|
Group: Documentation/HTML
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description doc
|
||||||
|
This package contains the documentation for vagrant.
|
||||||
|
|
||||||
|
%package vim
|
||||||
|
Summary: Vagrantfile syntax files for the vim editor
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Supplements: (vagrant and vim)
|
||||||
|
BuildRequires: vim
|
||||||
|
Requires: vagrant = %{version}
|
||||||
|
Requires: vim
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description vim
|
||||||
|
Optional dependency offering vim syntax files for Vagrantfile
|
||||||
|
|
||||||
|
%package emacs
|
||||||
|
Summary: Vagrantfile syntax files for the emacs editor
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Supplements: (vagrant and emacs_program)
|
||||||
|
BuildRequires: emacs-nox
|
||||||
|
Requires: emacs_program
|
||||||
|
Requires: vagrant = %{version}
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description emacs
|
||||||
|
Optional dependency offering emacs syntax files for Vagrantfile
|
||||||
|
|
||||||
|
%package bash-completion
|
||||||
|
Summary: Vagrant bash autocompletion
|
||||||
|
Group: Development/Languages/Ruby
|
||||||
|
Supplements: (vagrant and bash)
|
||||||
|
BuildRequires: bash
|
||||||
|
BuildRequires: bash-completion
|
||||||
|
Requires: bash
|
||||||
|
Requires: bash-completion
|
||||||
|
Requires: vagrant = %{version}
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description bash-completion
|
||||||
|
Optional dependency offering bash completion for vagrant
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n %{mod_full_name}
|
||||||
|
|
||||||
|
cp %{SOURCE98} .
|
||||||
|
|
||||||
|
%build
|
||||||
|
mv %{mod_name}.gemspec %{mod_full_name}.gemspec
|
||||||
|
%gem_build
|
||||||
|
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_binary install -V -f --local --no-user-install \
|
||||||
|
--ignore-dependencies --no-document --backtrace \
|
||||||
|
--document=rdoc,ri \
|
||||||
|
--install-dir %{buildroot}%{vagrant_plugin_dir} \
|
||||||
|
--bindir %{buildroot}%{vagrant_plugin_dir}/bin %{_sourcedir}/%{mod_full_name}.gem
|
||||||
|
|
||||||
|
# the actual vagrant binary generated from the binstub
|
||||||
|
install -D -m 755 %{SOURCE96} %{buildroot}%{_bindir}/vagrant
|
||||||
|
gem_path=$(ruby.%{rb_ruby_suffix} -e "print Gem.path.reject{|path| path.include? 'home'}.join(':')")
|
||||||
|
sed -i -e "s|@vagrant_embedded_dir@|%{vagrant_embedded_dir}|" \
|
||||||
|
-e "s|@ruby_vagrant_gem_path@|$gem_path:%{vagrant_plugin_dir}|" \
|
||||||
|
-e "s|@vagrant_rb_ruby_suffix@|%{vagrant_rb_ruby_suffix}|" \
|
||||||
|
%{buildroot}%{_bindir}/%{name}
|
||||||
|
|
||||||
|
# install the rpm macros & expand the name, name-version and vagrant_rb_* macros
|
||||||
|
%global macros_vagrant %{_rpmconfigdir}/macros.d/macros.%{name}
|
||||||
|
install -D -m 0644 %{SOURCE97} %{buildroot}%{macros_vagrant}
|
||||||
|
sed -i -e "s|%%{name}|%{name}|" \
|
||||||
|
-e "s|%{name}-%%{version}|%{name}-%{version}|" \
|
||||||
|
-e "s|%%{rb_build_versions}|%{rb_build_versions}|" \
|
||||||
|
-e "s|%%{rb_build_abi}|%{rb_build_abi}|" \
|
||||||
|
-e "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
|
||||||
|
%global transfiletriggerin_rb %{vagrant_embedded_dir}/bin/vagrant_transfiletriggerin.rb
|
||||||
|
%global transfiletriggerun_rb %{vagrant_embedded_dir}/bin/vagrant_transfiletriggerun.rb
|
||||||
|
install -D -m 0755 %{SOURCE93} %{buildroot}%{transfiletriggerin_rb}
|
||||||
|
install -D -m 0755 %{SOURCE94} %{buildroot}%{transfiletriggerun_rb}
|
||||||
|
install -D -m 0755 %{SOURCE95} %{buildroot}%{post_rb}
|
||||||
|
|
||||||
|
# expand macros in scriptlets
|
||||||
|
for file in %{post_rb} %{transfiletriggerin_rb} %{transfiletriggerun_rb}; do
|
||||||
|
sed -i "s|%%{vagrant_dir}|%{vagrant_dir}|" %{buildroot}$file
|
||||||
|
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
|
||||||
|
install -D -m 644 %{SOURCE11} %{buildroot}%{_mandir}/man1/vagrant.1
|
||||||
|
|
||||||
|
# Bash completion: install it without the .sh ending, otherwise completion is broken
|
||||||
|
# and remove the shebang line in it
|
||||||
|
install -D -m 0644 %{buildroot}%{vagrant_dir}/contrib/bash/completion.sh \
|
||||||
|
%{buildroot}%{_datadir}/bash-completion/completions/%{mod_name}
|
||||||
|
sed -i '1d' %{buildroot}%{_datadir}/bash-completion/completions/%{mod_name}
|
||||||
|
|
||||||
|
# Vim & Emacs syntax highlighting
|
||||||
|
install -D -m 0644 %{buildroot}%{vagrant_dir}/contrib/vim/vagrantfile.vim \
|
||||||
|
%{buildroot}%{vim_data_dir}/%{mod_name}.vim
|
||||||
|
install -D -m 0644 %{buildroot}%{vagrant_dir}/contrib/emacs/vagrant.el \
|
||||||
|
%{buildroot}%{_datadir}/emacs/site-lisp/%{mod_name}.el
|
||||||
|
|
||||||
|
chmod -x %{buildroot}%{vagrant_dir}/templates/locales/en.yml
|
||||||
|
|
||||||
|
# directories for vagrant plugins
|
||||||
|
mkdir -p %{buildroot}%{dirname:%{vagrant_plugin_cache}}
|
||||||
|
mkdir -p %{buildroot}%{dirname:%{vagrant_plugin_spec}}
|
||||||
|
mkdir -p %{buildroot}%{dirname:%{vagrant_plugin_docdir}}
|
||||||
|
|
||||||
|
# fix shebang in %%{vagrant_dir}/bin/%%{name}
|
||||||
|
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_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_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 scripts & nix stuff & go stuff
|
||||||
|
rm -rf %{buildroot}%{vagrant_dir}/{.runner.sh,Dockerfile,Makefile,go.mod,go.sum,shell.nix,nix,gen.go,flake.lock,flake.nix,vagrant-config.hcl}
|
||||||
|
# we use our own binstub
|
||||||
|
rm -rf %{buildroot}%{vagrant_dir}/binstubs/
|
||||||
|
|
||||||
|
# some compatibility helper for winrm which we do not use (https://github.com/hashicorp/vagrant/pull/13178)
|
||||||
|
rm -r %{buildroot}%{vagrant_dir}/ext/vagrant_ssl
|
||||||
|
|
||||||
|
%fdupes %{buildroot}%{dirname:%vagrant_plugin_dir}
|
||||||
|
|
||||||
|
%check
|
||||||
|
|
||||||
|
%if %{with tests}
|
||||||
|
# remove the git reference to vagrant-spec
|
||||||
|
# -> 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_ruby_suffix} -e "print Gem.path.reject{|path| path.include? 'home'}.join(':')")
|
||||||
|
bundle exec rake test:unit
|
||||||
|
%endif
|
||||||
|
# with tests
|
||||||
|
|
||||||
|
%pre
|
||||||
|
getent group vagrant >/dev/null || groupadd -r vagrant
|
||||||
|
|
||||||
|
%post
|
||||||
|
%{post_rb}
|
||||||
|
|
||||||
|
%transfiletriggerin -- %{dirname:%{vagrant_plugin_spec}}/
|
||||||
|
%{transfiletriggerin_rb}
|
||||||
|
|
||||||
|
%transfiletriggerun -- %{dirname:%{vagrant_plugin_spec}}/
|
||||||
|
%{transfiletriggerun_rb}
|
||||||
|
|
||||||
|
%files
|
||||||
|
%doc %{vagrant_dir}/CHANGELOG.md
|
||||||
|
%doc %{vagrant_dir}/README.md
|
||||||
|
%doc %{vagrant_dir}/README.SUSE
|
||||||
|
%license %{vagrant_dir}/LICENSE
|
||||||
|
|
||||||
|
%{_bindir}/%{name}
|
||||||
|
%{_mandir}/man1/%{name}.*
|
||||||
|
|
||||||
|
%{macros_vagrant}
|
||||||
|
|
||||||
|
# scriptlets
|
||||||
|
%dir %{dirname: %{post_rb}}
|
||||||
|
%{post_rb}
|
||||||
|
%{transfiletriggerin_rb}
|
||||||
|
%{transfiletriggerun_rb}
|
||||||
|
|
||||||
|
%dir %{vagrant_embedded_dir}
|
||||||
|
%ghost %{vagrant_plugin_conf}
|
||||||
|
|
||||||
|
# plugin directories
|
||||||
|
%dir %{vagrant_plugin_dir}
|
||||||
|
%dir %{vagrant_plugin_dir}/gems
|
||||||
|
%dir %{vagrant_plugin_dir}/bin
|
||||||
|
%dir %{dirname:%{vagrant_plugin_cache}}
|
||||||
|
%dir %{dirname:%{vagrant_plugin_spec}}
|
||||||
|
%dir %{dirname:%{vagrant_plugin_docdir}}
|
||||||
|
|
||||||
|
# vagrant's own files & directories
|
||||||
|
%{vagrant_plugin_cache}
|
||||||
|
%{vagrant_plugin_spec}
|
||||||
|
%{vagrant_plugin_dir}/bin/%{name}
|
||||||
|
|
||||||
|
%dir %{vagrant_dir}
|
||||||
|
%dir %{vagrant_dir}/bin
|
||||||
|
%dir %{vagrant_dir}/keys
|
||||||
|
%dir %{vagrant_dir}/lib
|
||||||
|
%dir %{vagrant_dir}/plugins
|
||||||
|
%dir %{vagrant_dir}/templates
|
||||||
|
%{vagrant_dir}/version.txt
|
||||||
|
%{vagrant_dir}/%{mod_full_name}.gemspec
|
||||||
|
%{vagrant_dir}/bin/%{name}
|
||||||
|
%{vagrant_dir}/keys/*
|
||||||
|
%{vagrant_dir}/lib/*
|
||||||
|
%{vagrant_dir}/plugins/*
|
||||||
|
%{vagrant_dir}/templates/*
|
||||||
|
%{vagrant_dir}/tools.go
|
||||||
|
|
||||||
|
# these are scripts for Hashicorp
|
||||||
|
%exclude %{vagrant_dir}/scripts/*
|
||||||
|
# either packaged in -vim -emacs subpackages or not relevant
|
||||||
|
%exclude %{vagrant_dir}/contrib
|
||||||
|
# various dotfiles we don't care about (.travis.yml et.al.)
|
||||||
|
%exclude %{vagrant_dir}/.*
|
||||||
|
# Development files
|
||||||
|
%exclude %{vagrant_dir}/Vagrantfile
|
||||||
|
%exclude %{vagrant_dir}/Rakefile
|
||||||
|
%exclude %{vagrant_dir}/Gemfile
|
||||||
|
%exclude %{vagrant_dir}/RELEASE.md
|
||||||
|
%exclude %{vagrant_dir}/tasks/*
|
||||||
|
# ruby configuration for acceptance tests
|
||||||
|
%exclude %{vagrant_dir}/vagrant-spec.config.example.rb
|
||||||
|
|
||||||
|
%files doc
|
||||||
|
%dir %{vagrant_plugin_docdir}
|
||||||
|
%doc %{vagrant_plugin_docdir}/rdoc
|
||||||
|
%doc %{vagrant_plugin_docdir}/ri
|
||||||
|
|
||||||
|
%files vim
|
||||||
|
%{vim_data_dir}/%{mod_name}.vim
|
||||||
|
|
||||||
|
%files emacs
|
||||||
|
%{_datadir}/emacs/site-lisp/%{mod_name}.el
|
||||||
|
|
||||||
|
%files bash-completion
|
||||||
|
%{_datadir}/bash-completion/completions/%{mod_name}
|
||||||
|
|
||||||
|
%changelog
|
17
vagrant_post.rb
Normal file
17
vagrant_post.rb
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
#!/usr/bin/ruby.%{rb_ruby_suffix}
|
||||||
|
|
||||||
|
begin
|
||||||
|
$LOAD_PATH.unshift "%{vagrant_dir}/lib"
|
||||||
|
begin
|
||||||
|
require "vagrant/plugin/manager"
|
||||||
|
rescue LoadError => e
|
||||||
|
raise
|
||||||
|
end;
|
||||||
|
|
||||||
|
unless File.exist?("%{vagrant_plugin_conf}")
|
||||||
|
Vagrant::Plugin::StateFile.new(Pathname.new(File.expand_path "%{vagrant_plugin_conf}")).save!
|
||||||
|
# File.symlink "%{vagrant_plugin_conf}", "%{vagrant_plugin_conf_link}"
|
||||||
|
end
|
||||||
|
rescue => e
|
||||||
|
puts "Vagrant plugin.json is not properly initialized: #{e}"
|
||||||
|
end
|
19
vagrant_transfiletriggerin.rb
Normal file
19
vagrant_transfiletriggerin.rb
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#!/usr/bin/ruby.%{rb_ruby_suffix}
|
||||||
|
|
||||||
|
begin
|
||||||
|
$LOAD_PATH.unshift "%{vagrant_dir}/lib"
|
||||||
|
begin
|
||||||
|
require "vagrant/plugin/manager"
|
||||||
|
rescue LoadError => e
|
||||||
|
raise
|
||||||
|
end
|
||||||
|
|
||||||
|
$stdin.each_line do |gemspec_file|
|
||||||
|
next if gemspec_file =~ /\/%{name}-%{version}.gemspec$/
|
||||||
|
|
||||||
|
spec = Gem::Specification.load(gemspec_file.strip)
|
||||||
|
Vagrant::Plugin::StateFile.new(Pathname.new(File.expand_path "%{vagrant_plugin_conf}")).add_plugin spec.name
|
||||||
|
end
|
||||||
|
rescue => e
|
||||||
|
puts "Vagrant plugin register error: #{e}"
|
||||||
|
end
|
19
vagrant_transfiletriggerun.rb
Normal file
19
vagrant_transfiletriggerun.rb
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#!/usr/bin/ruby.%{rb_ruby_suffix}
|
||||||
|
|
||||||
|
begin
|
||||||
|
$LOAD_PATH.unshift "%{vagrant_dir}/lib"
|
||||||
|
begin
|
||||||
|
require "vagrant/plugin/manager"
|
||||||
|
rescue LoadError => e
|
||||||
|
raise
|
||||||
|
end
|
||||||
|
|
||||||
|
$stdin.each_line do |gemspec_file|
|
||||||
|
next if gemspec_file =~ /\/%{name}-%{version}.gemspec$/
|
||||||
|
|
||||||
|
spec = Gem::Specification.load(gemspec_file.strip)
|
||||||
|
Vagrant::Plugin::StateFile.new(Pathname.new(File.expand_path "%{vagrant_plugin_conf}")).remove_plugin spec.name
|
||||||
|
end
|
||||||
|
rescue => e
|
||||||
|
puts "Vagrant plugin un-register error: #{e}"
|
||||||
|
end
|
Loading…
Reference in New Issue
Block a user