vagrant-vbguest 0.21.0 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f213012e6f9e581787544f8a4b05dac855cc79a055c3d04fb488682ce4a97a17
4
- data.tar.gz: cc84ba488d581b7078b5e244239ae75d912dcde94837ff7c5d3b4138c833544f
3
+ metadata.gz: fd46d6d0e7bfff66a287572bbe41c9c20375a03b14c0a70122670935bd87c1b4
4
+ data.tar.gz: 67f4ad8b493ac4a16d45df782e7ab4785e9092444911a3a78f356a8a87ec47cd
5
5
  SHA512:
6
- metadata.gz: 73d8c5ed68a32b7561d6dde9052b2a2adc22e4ef924e680eb64ee56e50c5d60207646710e7f0408f53092454f8bad90eb563cafb05b04b12b280959fe06f0ecc
7
- data.tar.gz: 1389e1c8951c6fcc4b5447a806f0fd5ce0a5c2b335f8018ae5f2028ac46a2fcfde340a72678d9c9b1aa0034cde59ce13273bba6df3d0801b02eb5eeb9087e17b
6
+ metadata.gz: 1e41145e1eacf6aaad2d4bf17e506b408ef2be2d1f1cb3ed66b5c4a77654e69bebf5f1d99204b81c80b2b15ca5fd4c9372dbd8b6e62c3fc0482582bc89cc3d19
7
+ data.tar.gz: c1e19268ec2cab24a19ff5479dcfae3c4088673db2cb620d8b1c68a0db6f55cf95be170d6add8192db7c631b51eb795d9cb379c898f668ba107257dfce22d7f5
@@ -1,3 +1,9 @@
1
+ ## 0.22.0 (2019-12-01)
2
+
3
+ - Opensuse installer now uninstalls packaged guest additions
4
+ - Fix error trying to rebuild/start guest additions when no `vboxadd` to is present [GH-358]
5
+ - Fiy Oracle installer to support non UEK kernel. [GH-357]
6
+
1
7
  ## 0.21.0 (2019-11-11)
2
8
 
3
9
  - Default `web_path` to virtualbox now uses https. @adamzerella [GH-354]
data/Gemfile CHANGED
@@ -6,6 +6,8 @@ group :development do
6
6
  # Vagrant environment itself using `vagrant plugin`.
7
7
  if ENV["VAGRANT_VERSION"]
8
8
  gem "vagrant", :git => "https://github.com/hashicorp/vagrant.git", tag: "v#{ENV["VAGRANT_VERSION"]}"
9
+ elsif ENV["VAGRANT_LOCAL"]
10
+ gem "vagrant", path: ENV["VAGRANT_LOCAL"]
9
11
  else
10
12
  gem "vagrant", :git => "https://github.com/hashicorp/vagrant.git"
11
13
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.21.0
1
+ 0.22.0
@@ -105,7 +105,14 @@ module VagrantVbguest
105
105
 
106
106
  def reboot_after_install?
107
107
  if (installer = guest_installer)
108
- guest_installer.reboot_after_install?
108
+ installer.reboot_after_install?
109
+ end
110
+ end
111
+
112
+ # Does the guest installer provide service tooling to manually start or rebuild guest additions?
113
+ def has_service_tools?
114
+ if (installer = guest_installer)
115
+ installer.has_vboxadd_tools?
109
116
  end
110
117
  end
111
118
 
@@ -129,6 +129,11 @@ module VagrantVbguest
129
129
  false
130
130
  end
131
131
 
132
+ # Does the guest installer provide tooling to manually start or rebuild guest additions?
133
+ def has_vboxadd_tools?(opts=nil, &block)
134
+ false
135
+ end
136
+
132
137
  # Determinates the GuestAdditions version installed on the
133
138
  # guest system.
134
139
  #
@@ -64,7 +64,7 @@ module VagrantVbguest
64
64
  super
65
65
  else
66
66
  # we should have installed kernel-devel-`uname -r` via install_kernel_devel
67
- ['gcc', 'binutils', 'make', 'perl', 'bzip2'].join(' ')
67
+ ['gcc', 'binutils', 'make', 'perl', 'bzip2', 'elfutils-libelf-devel'].join(' ')
68
68
  end
69
69
  end
70
70
  end
@@ -135,6 +135,10 @@ module VagrantVbguest
135
135
  end
136
136
  end
137
137
 
138
+ def has_service_tools?(opts=nil, &block)
139
+ !!find_tool('vboxadd') || communicate.test('systemctl list-units --type service | grep -q vboxadd', {:sudo => true})
140
+ end
141
+
138
142
  # Check for the presence of 'systemd' chkconfg or service command.
139
143
  #
140
144
  # systemd_tool # => {:path=>"/usr/sbin/service", :up=>"start"}
@@ -9,6 +9,7 @@ module VagrantVbguest
9
9
 
10
10
  # Install missing deps and yield up to regular linux installation
11
11
  def install(opts=nil, &block)
12
+ communicate.sudo(uninstall_dist_install_cmd, (opts || {}).merge(:error_check => false), &block)
12
13
  communicate.sudo(install_dependencies_cmd, opts, &block)
13
14
  super
14
15
  end
@@ -18,6 +19,10 @@ module VagrantVbguest
18
19
  communicate_to(vm).test("which zypper")
19
20
  end
20
21
 
22
+ def uninstall_dist_install_cmd
23
+ "zypper --non-interactive rm -y virtualbox-guest-kmp-default virtualbox-guest-tools virtualbox-guest-x11"
24
+ end
25
+
21
26
  def install_dependencies_cmd
22
27
  "zypper --non-interactive install -t pattern #{dependencies}"
23
28
  end
@@ -10,7 +10,13 @@ module VagrantVbguest
10
10
  protected
11
11
 
12
12
  def dependencies
13
- ['kernel-uek-devel-`uname -r`', 'gcc', 'make', 'perl', 'bzip2'].join(' ')
13
+ [
14
+ 'kernel-`uname -a | grep -q "uek." && echo "uek-"`devel-`uname -r`',
15
+ 'gcc',
16
+ 'make',
17
+ 'perl',
18
+ 'bzip2'
19
+ ].join(' ')
14
20
  end
15
21
  end
16
22
  end
@@ -27,7 +27,8 @@ module VagrantVbguest
27
27
  'binutils',
28
28
  'make',
29
29
  'perl',
30
- 'bzip2'
30
+ 'bzip2',
31
+ 'elfutils-libelf-devel'
31
32
  ].join(' ')
32
33
  end
33
34
  end
@@ -54,7 +54,7 @@ module VagrantVbguest
54
54
 
55
55
  def steps(state)
56
56
  case state
57
- when :clean, :unmatched
57
+ when :clean, :dirty, :unmatched
58
58
  [:install].tap { |l| l << :reboot if installer.reboot_after_install? }
59
59
  when :not_running
60
60
  installation_ran? ? [:reboot] : [:start, :rebuild, :reboot]
@@ -71,6 +71,9 @@ module VagrantVbguest
71
71
 
72
72
  return :clean if !guest_version
73
73
 
74
+ # some sort of distro installation bot no `vboxadd` tools to trgger rebuilds or manual starts
75
+ return :dirty if !installer.has_service_tools?
76
+
74
77
  if host_version != guest_version
75
78
  return :unmatched if host_version > guest_version || options[:allow_downgrade] || options[:force]
76
79
  return :not_running if !running # still need to check this here, so we don't miss it before running into "skipped_downgrade"
@@ -28,6 +28,7 @@ en:
28
28
 
29
29
  status:
30
30
  clean: "[%{vm_name}] No Virtualbox Guest Additions installation found."
31
+ dirty: "[%{vm_name}] A Virtualbox Guest Additions installation was found but no tools to rebuild or start them."
31
32
  unmatched: "[%{vm_name}] GuestAdditions versions on your host (%{host_version}) and guest (%{guest_version}) do not match."
32
33
  not_running: "[%{vm_name}] GuestAdditions seems to be installed (%{guest_version}) correctly, but not running."
33
34
  ok: "[%{vm_name}] GuestAdditions %{guest_version} running --- OK."
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-vbguest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.21.0
4
+ version: 0.22.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Schulze
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-11-11 00:00:00.000000000 Z
11
+ date: 2019-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: micromachine