sahara 0.0.5 → 0.0.8

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.
@@ -1,10 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sahara (0.0.5)
4
+ sahara (0.0.8)
5
5
  popen4 (~> 0.1.2)
6
6
  thor (~> 0.14.6)
7
- vagrant (~> 0.8.1)
7
+ vagrant (~> 0.8.2)
8
8
 
9
9
  GEM
10
10
  remote: http://rubygems.org/
@@ -23,7 +23,7 @@ GEM
23
23
  Platform (>= 0.4.0)
24
24
  open4 (>= 0.4.0)
25
25
  thor (0.14.6)
26
- vagrant (0.8.1)
26
+ vagrant (0.8.2)
27
27
  archive-tar-minitar (= 0.5.2)
28
28
  erubis (~> 2.7.0)
29
29
  i18n (~> 0.5.0)
@@ -31,8 +31,8 @@ GEM
31
31
  net-scp (~> 1.0.4)
32
32
  net-ssh (~> 2.1.4)
33
33
  thor (~> 0.14.6)
34
- virtualbox (~> 0.9.0)
35
- virtualbox (0.9.0)
34
+ virtualbox (~> 0.9.1)
35
+ virtualbox (0.9.1)
36
36
  ffi (~> 1.0.9)
37
37
 
38
38
  PLATFORMS
data/README.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # Description
2
2
 
3
- Sahara allows vagrant to operate in sandbox mode
3
+ Sahara allows vagrant to operate in sandbox mode.
4
4
 
5
5
  Typical usage:
6
6
 
7
7
  - Enter sandbox mode: <pre>vagrant sandbox on</pre>
8
8
  - Do some stuff: <pre>vagrant ssh </pre>
9
- - If satisfied apply the changes: <pre>vagrant sandbox commit</pre>
10
- - If not satisfied you can rollback: <pre>vagrant sandbox rollback</pre>
11
- - To leave sandbox mod: <pre>vagrant sandbox off</pre>
9
+ - If satisfied, apply the changes permanently: <pre>vagrant sandbox commit</pre>
10
+ - If not satisfied, rollback to the previous commit: <pre>vagrant sandbox rollback</pre>
11
+ - Exit sandbox mode: <pre>vagrant sandbox off</pre>
12
12
 
13
13
  Many kudos go to the creators of [vagrant](http://vagrantup.com)
14
14
 
@@ -40,7 +40,7 @@ module Sahara
40
40
  #Creating a snapshot
41
41
  puts "[#{boxname}] - Enabling sandbox"
42
42
 
43
- execute("#{@vboxcmd} snapshot '#{instance_name}' take '#{@sandboxname}'")
43
+ execute("#{@vboxcmd} snapshot '#{instance_name}' take '#{@sandboxname}' --pause")
44
44
  end
45
45
 
46
46
  end
@@ -64,7 +64,7 @@ module Sahara
64
64
  #Now retake the snapshot
65
65
  puts "[#{boxname}] - fastforwarding sandbox"
66
66
 
67
- execute("#{@vboxcmd} snapshot '#{instance_name}' take '#{@sandboxname}'")
67
+ execute("#{@vboxcmd} snapshot '#{instance_name}' take '#{@sandboxname}' --pause")
68
68
 
69
69
  end
70
70
 
@@ -87,6 +87,10 @@ module Sahara
87
87
  #Poweroff machine
88
88
  execute("#{@vboxcmd} controlvm '#{instance_name}' poweroff")
89
89
 
90
+ #Poweroff takes a second or so to complete; Virtualbox will throw errors
91
+ #if you try to restore a snapshot before it's ready.
92
+ sleep 2
93
+
90
94
  puts "[#{boxname}] - roll back machine"
91
95
 
92
96
  #Rollback until snapshot
@@ -95,8 +99,22 @@ module Sahara
95
99
  puts "[#{boxname}] - starting the machine again"
96
100
 
97
101
  #Startvm again
98
- execute("#{@vboxcmd} startvm --type headless '#{instance_name}' ")
99
-
102
+ #
103
+ # Grab the boot_mode setting from the Vagrantfile
104
+ config_boot_mode="#{@vagrant_env.config.vm.boot_mode.to_s}"
105
+
106
+ case config_boot_mode
107
+ when 'vrdp'
108
+ boot_mode='headless'
109
+ when 'gui'
110
+ boot_mode='gui'
111
+ else
112
+ puts "Vagrantfile config.vm.boot_mode=#{config_boot_mode} setting unknown - defaulting to headless"
113
+ boot_mode='headless'
114
+ end
115
+
116
+ execute("#{@vboxcmd} startvm --type #{boot_mode} '#{instance_name}' ")
117
+
100
118
  end
101
119
 
102
120
  end
@@ -1,3 +1,3 @@
1
1
  module Sahara
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.8"
3
3
  end
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
14
14
  s.required_rubygems_version = ">= 1.3.6"
15
15
  s.rubyforge_project = "sahara"
16
16
 
17
- s.add_dependency "vagrant", "~> 0.8.1"
17
+ s.add_dependency "vagrant", "~> 0.8.2"
18
18
  s.add_dependency "popen4", "~> 0.1.2"
19
19
  s.add_dependency "thor", "~> 0.14.6"
20
20
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sahara
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 5
10
- version: 0.0.5
9
+ - 8
10
+ version: 0.0.8
11
11
  platform: ruby
12
12
  authors:
13
13
  - Patrick Debois
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-07-23 00:00:00 +10:00
18
+ date: 2011-11-14 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -24,12 +24,12 @@ dependencies:
24
24
  requirements:
25
25
  - - ~>
26
26
  - !ruby/object:Gem::Version
27
- hash: 61
27
+ hash: 59
28
28
  segments:
29
29
  - 0
30
30
  - 8
31
- - 1
32
- version: 0.8.1
31
+ - 2
32
+ version: 0.8.2
33
33
  type: :runtime
34
34
  requirement: *id001
35
35
  name: vagrant