veewee 0.3.0.alpha6 → 0.3.0.alpha7
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.
- data/lib/veewee/command/kvm.rb +1 -1
- data/lib/veewee/command/vagrant/basebox.rb +2 -0
- data/lib/veewee/command/vagrant/build.rb +1 -1
- data/lib/veewee/command/vagrant/define.rb +1 -1
- data/lib/veewee/command/vagrant/destroy.rb +1 -1
- data/lib/veewee/command/vagrant/export.rb +1 -1
- data/lib/veewee/command/vagrant/halt.rb +1 -1
- data/lib/veewee/command/vagrant/list.rb +2 -2
- data/lib/veewee/command/vagrant/ostypes.rb +2 -2
- data/lib/veewee/command/vagrant/ssh.rb +1 -2
- data/lib/veewee/command/vagrant/templates.rb +3 -3
- data/lib/veewee/command/vagrant/undefine.rb +2 -2
- data/lib/veewee/command/vagrant/up.rb +1 -1
- data/lib/veewee/command/vagrant/validate.rb +44 -0
- data/lib/veewee/command/virtualbox.rb +3 -3
- data/lib/veewee/config/definition.rb +4 -4
- data/lib/veewee/definition.rb +8 -0
- data/lib/veewee/provider/core/box.rb +7 -0
- data/lib/veewee/provider/core/box/build.rb +12 -12
- data/lib/veewee/provider/core/box/exec.rb +2 -2
- data/lib/veewee/provider/core/box/scp.rb +2 -2
- data/lib/veewee/provider/core/box/ssh.rb +1 -1
- data/lib/veewee/provider/core/box/vnc.rb +3 -3
- data/lib/veewee/provider/core/helper/iso.rb +30 -30
- data/lib/veewee/provider/core/helper/scancode.rb +1 -1
- data/lib/veewee/provider/core/helper/shell.rb +6 -6
- data/lib/veewee/provider/core/helper/ssh.rb +15 -17
- data/lib/veewee/provider/core/helper/tcp.rb +4 -4
- data/lib/veewee/provider/core/helper/web.rb +6 -6
- data/lib/veewee/provider/core/provider.rb +20 -13
- data/lib/veewee/provider/core/provider/tunnel.rb +8 -8
- data/lib/veewee/provider/kvm/box/helper/console_type.rb +1 -1
- data/lib/veewee/provider/kvm/box/validate_kvm.rb +2 -2
- data/lib/veewee/provider/parallels/box/create.rb +1 -1
- data/lib/veewee/provider/parallels/box/destroy.rb +1 -1
- data/lib/veewee/provider/parallels/box/helper/buildinfo.rb +1 -1
- data/lib/veewee/provider/parallels/box/helper/console_type.rb +5 -5
- data/lib/veewee/provider/parallels/box/validate_parallels.rb +2 -2
- data/lib/veewee/provider/virtualbox/box/destroy.rb +7 -7
- data/lib/veewee/provider/virtualbox/box/export_vagrant.rb +18 -18
- data/lib/veewee/provider/virtualbox/box/helper/console_type.rb +8 -8
- data/lib/veewee/provider/virtualbox/box/helper/create.rb +8 -8
- data/lib/veewee/provider/virtualbox/box/helper/guest_additions.rb +1 -1
- data/lib/veewee/provider/virtualbox/box/poweroff.rb +1 -1
- data/lib/veewee/provider/virtualbox/box/up.rb +2 -2
- data/lib/veewee/provider/virtualbox/box/validate_vagrant.rb +3 -3
- data/lib/veewee/providers.rb +1 -1
- data/lib/veewee/ui.rb +2 -0
- data/lib/veewee/version.rb +1 -1
- data/templates/CentOS-5.7-i386-netboot/definition.rb +1 -1
- data/templates/CentOS-5.7-i386-netboot/ks.cfg +1 -1
- data/templates/Debian-6.0.3-amd64-netboot/definition.rb +1 -1
- data/templates/Debian-6.0.3-i386-netboot/definition.rb +1 -1
- metadata +3 -2
@@ -12,13 +12,13 @@ module Veewee
|
|
12
12
|
|
13
13
|
def send_virtualbox_sequence(sequence)
|
14
14
|
|
15
|
-
|
15
|
+
ui.info ""
|
16
16
|
|
17
17
|
counter=0
|
18
18
|
sequence.each { |s|
|
19
19
|
counter=counter+1
|
20
20
|
|
21
|
-
|
21
|
+
ui.info "Typing:[#{counter}]: "+s
|
22
22
|
|
23
23
|
keycodes=Veewee::Provider::Core::Helper::Scancode.string_to_keycode(s)
|
24
24
|
|
@@ -38,8 +38,8 @@ module Veewee
|
|
38
38
|
sleep 0.5
|
39
39
|
}
|
40
40
|
|
41
|
-
|
42
|
-
|
41
|
+
ui.info "Done typing."
|
42
|
+
ui.info ""
|
43
43
|
|
44
44
|
end
|
45
45
|
|
@@ -48,10 +48,10 @@ module Veewee
|
|
48
48
|
env.logger.info "#{command}"
|
49
49
|
sshresult=shell_exec("#{command}",{:mute => true})
|
50
50
|
unless sshresult.stdout.index("E_ACCESSDENIED").nil?
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
51
|
+
ui.error "There was an error typing the commands on the console"
|
52
|
+
ui.error "Probably the VM did not get started."
|
53
|
+
ui.error ""
|
54
|
+
ui.error "#{sshresult.stdout}"
|
55
55
|
exit -1
|
56
56
|
end
|
57
57
|
end
|
@@ -66,7 +66,7 @@ module Veewee
|
|
66
66
|
|
67
67
|
|
68
68
|
def create_disk
|
69
|
-
|
69
|
+
ui.info "Creating new harddrive of size #{definition.disk_size.to_i} "
|
70
70
|
|
71
71
|
|
72
72
|
place=get_vbox_home
|
@@ -81,7 +81,7 @@ module Veewee
|
|
81
81
|
location=name+"."+definition.disk_format.downcase
|
82
82
|
|
83
83
|
location="#{File.join(place,name,location)}"
|
84
|
-
|
84
|
+
ui.info "Attaching disk: #{location}"
|
85
85
|
|
86
86
|
#command => "${vboxcmd} storageattach \"${vname}\" --storagectl \"SATA Controller\" --port 0 --device 0 --type hdd --medium \"${vname}.vdi\"",
|
87
87
|
command ="#{@vboxcmd} storageattach \"#{name}\" --storagectl \"SATA Controller\" --port 0 --device 0 --type hdd --medium \"#{location}\""
|
@@ -92,14 +92,14 @@ module Veewee
|
|
92
92
|
|
93
93
|
def attach_isofile
|
94
94
|
full_iso_file=File.join(env.config.veewee.iso_dir,definition.iso_file)
|
95
|
-
|
95
|
+
ui.info "Mounting cdrom: #{full_iso_file}"
|
96
96
|
command ="#{@vboxcmd} storageattach \"#{name}\" --storagectl \"IDE Controller\" --type dvddrive --port 0 --device 0 --medium \"#{full_iso_file}\""
|
97
97
|
shell_exec("#{command}")
|
98
98
|
end
|
99
99
|
|
100
100
|
def attach_guest_additions
|
101
101
|
full_iso_file=File.join(env.config.veewee.iso_dir,"VBoxGuestAdditions_#{self.vbox_version}.iso")
|
102
|
-
|
102
|
+
ui.info "Mounting guest additions: #{full_iso_file}"
|
103
103
|
command ="#{@vboxcmd} storageattach \"#{name}\" --storagectl \"IDE Controller\" --type dvddrive --port 1 --device 0 --medium \"#{full_iso_file}\""
|
104
104
|
shell_exec("#{command}")
|
105
105
|
end
|
@@ -137,7 +137,7 @@ module Veewee
|
|
137
137
|
#Exec and system stop the execution here
|
138
138
|
shell_exec("#{command}")
|
139
139
|
|
140
|
-
|
140
|
+
ui.info "Creating vm #{name} : #{definition.memory_size}M - #{definition.cpu_count} CPU - #{vbox_os_type_id(definition.os_type_id)}"
|
141
141
|
|
142
142
|
#setting cpu's
|
143
143
|
command="#{@vboxcmd} modifyvm \"#{name}\" --cpus #{definition.cpu_count}"
|
@@ -157,8 +157,8 @@ module Veewee
|
|
157
157
|
vm_flags.each do |vm_flag|
|
158
158
|
if definition.instance_variable_defined?("@#{vm_flag}")
|
159
159
|
vm_flag_value=definition.instance_variable_get("@#{vm_flag}")
|
160
|
-
|
161
|
-
|
160
|
+
ui.info "Setting VM Flag #{vm_flag} to #{vm_flag_value}"
|
161
|
+
ui.warn "Used of #{vm_flag} is deprecated - specify your options in :virtualbox => { : vm_options => [\"#{vm_flag}\" => \"#{vm_flag_value}\"]}"
|
162
162
|
command="#{@vboxcmd} modifyvm #{name} --#{vm_flag.to_s} #{vm_flag_value}"
|
163
163
|
shell_exec("#{command}")
|
164
164
|
end
|
@@ -166,7 +166,7 @@ module Veewee
|
|
166
166
|
|
167
167
|
unless definition.virtualbox[:vm_options][0].nil?
|
168
168
|
definition.virtualbox[:vm_options][0].each do |vm_flag,vm_flag_value|
|
169
|
-
|
169
|
+
ui.info "Setting VM Flag #{vm_flag} to #{vm_flag_value}"
|
170
170
|
command="#{@vboxcmd} modifyvm #{name} --#{vm_flag.to_s} #{vm_flag_value}"
|
171
171
|
shell_exec("#{command}")
|
172
172
|
end
|
@@ -7,7 +7,7 @@ module Veewee
|
|
7
7
|
version=self.vbox_version
|
8
8
|
isofile="VBoxGuestAdditions_#{version}.iso"
|
9
9
|
url="http://download.virtualbox.org/virtualbox/#{version}/#{isofile}"
|
10
|
-
|
10
|
+
ui.info "Downloading vbox guest additions iso v #{version} - #{url}"
|
11
11
|
download_iso(url,isofile)
|
12
12
|
end
|
13
13
|
|
@@ -6,7 +6,7 @@ module Veewee
|
|
6
6
|
def poweroff(options={})
|
7
7
|
# If the vm is not powered off, perform a shutdown
|
8
8
|
if (self.exists? && self.running?)
|
9
|
-
|
9
|
+
ui.info "Shutting down vm #{name}"
|
10
10
|
#We force it here, maybe vm.shutdown is cleaner
|
11
11
|
command="#{@vboxcmd} controlvm \"#{name}\" poweroff"
|
12
12
|
shell_exec("#{command}")
|
@@ -6,7 +6,7 @@ module Veewee
|
|
6
6
|
def up(options={})
|
7
7
|
|
8
8
|
unless self.exists?
|
9
|
-
|
9
|
+
ui.error "Error:: You tried to up a non-existing box '#{name}'"
|
10
10
|
exit -1
|
11
11
|
end
|
12
12
|
|
@@ -23,7 +23,7 @@ module Veewee
|
|
23
23
|
if guessed_port!=forward[:guest_port]
|
24
24
|
# Remove the existing one
|
25
25
|
self.delete_forwarding("guestssh")
|
26
|
-
|
26
|
+
ui.warn "Changing ssh port from #{forward[:guest_port]} to #{guessed_port}"
|
27
27
|
self.add_ssh_nat_mapping
|
28
28
|
end
|
29
29
|
else
|
@@ -6,7 +6,7 @@ module Veewee
|
|
6
6
|
def validate_vagrant(options)
|
7
7
|
|
8
8
|
unless self.running?
|
9
|
-
|
9
|
+
ui.error "Error:: You tried to validate box '#{name}' but it is not running"
|
10
10
|
exit -1
|
11
11
|
end
|
12
12
|
|
@@ -40,8 +40,8 @@ module Veewee
|
|
40
40
|
rescue SystemExit => e
|
41
41
|
Kernel.exit(e.status)
|
42
42
|
rescue Exception => e
|
43
|
-
|
44
|
-
|
43
|
+
ui.error("#{e.message} (#{e.class})")
|
44
|
+
ui.error(e.backtrace.join("\n"))
|
45
45
|
Kernel.exit(1)
|
46
46
|
end
|
47
47
|
|
data/lib/veewee/providers.rb
CHANGED
data/lib/veewee/ui.rb
CHANGED
@@ -5,6 +5,7 @@ module Veewee
|
|
5
5
|
# of `warn`, `error`, `info`, and `success`.
|
6
6
|
class UI
|
7
7
|
attr_accessor :env
|
8
|
+
attr_accessor :resource
|
8
9
|
|
9
10
|
def initialize(env)
|
10
11
|
@env = env
|
@@ -71,6 +72,7 @@ module Veewee
|
|
71
72
|
def format_message(message, opts=nil)
|
72
73
|
opts = { :prefix => true }.merge(opts || {})
|
73
74
|
opts[:prefix]=false if env.resource=="veewee"
|
75
|
+
opts[:prefix]=false if env.resource=="vagrant"
|
74
76
|
message = "[#{env.resource}] #{message}" if opts[:prefix]
|
75
77
|
message
|
76
78
|
end
|
data/lib/veewee/version.rb
CHANGED
@@ -3,7 +3,7 @@ Veewee::Session.declare({
|
|
3
3
|
:disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off', :ioapic => 'on', :pae => 'on',
|
4
4
|
:os_type_id => 'RedHat',
|
5
5
|
:iso_file => "CentOS-5.7-i386-netinstall.iso",
|
6
|
-
:iso_src => "http://
|
6
|
+
:iso_src => "http://vault.centos.org/5.7/isos/i386/CentOS-5.7-i386-netinstall.iso",
|
7
7
|
:iso_md5 => "11222d9134cdfc101f6f91fe544254c9",
|
8
8
|
:iso_download_timeout => 1000,
|
9
9
|
:boot_wait => "10", :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
|
@@ -4,7 +4,7 @@ Veewee::Definition.declare({
|
|
4
4
|
:disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
|
5
5
|
:os_type_id => 'Debian_64',
|
6
6
|
:iso_file => "debian-6.0.3-amd64-netinst.iso",
|
7
|
-
:iso_src => "http://cdimage.debian.org/
|
7
|
+
:iso_src => "http://cdimage.debian.org/cdimage/archive/6.0.3/amd64/iso-cd/debian-6.0.3-amd64-netinst.iso",
|
8
8
|
:iso_md5 => "b663727d7f5b572c329cea8e2ff5e29c",
|
9
9
|
:iso_download_timeout => "1000",
|
10
10
|
:boot_wait => "10", :boot_cmd_sequence => [
|
@@ -6,7 +6,7 @@ Veewee::Definition.declare({
|
|
6
6
|
:disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
|
7
7
|
:os_type_id => 'Debian',
|
8
8
|
:iso_file => "debian-6.0.3-i386-netinst.iso",
|
9
|
-
:iso_src => "http://cdimage.debian.org/
|
9
|
+
:iso_src => "http://cdimage.debian.org/cdimage/archive/6.0.3/i386/iso-cd/debian-6.0.3-i386-netinst.iso",
|
10
10
|
:iso_md5 => "bf10748a0b867912727b248d2e21e8ba",
|
11
11
|
:iso_download_timeout => "1000",
|
12
12
|
:boot_wait => "10", :boot_cmd_sequence => [
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: veewee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease: 6
|
5
|
-
version: 0.3.0.
|
5
|
+
version: 0.3.0.alpha7
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Patrick Debois
|
@@ -260,6 +260,7 @@ files:
|
|
260
260
|
- lib/veewee/command/vagrant/templates.rb
|
261
261
|
- lib/veewee/command/vagrant/undefine.rb
|
262
262
|
- lib/veewee/command/vagrant/up.rb
|
263
|
+
- lib/veewee/command/vagrant/validate.rb
|
263
264
|
- lib/veewee/command/version.rb
|
264
265
|
- lib/veewee/command/virtualbox.rb
|
265
266
|
- lib/veewee/command/vmfusion.rb
|
@@ -916,7 +917,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
916
917
|
requirements:
|
917
918
|
- - ">="
|
918
919
|
- !ruby/object:Gem::Version
|
919
|
-
hash:
|
920
|
+
hash: 71648237759924019
|
920
921
|
segments:
|
921
922
|
- 0
|
922
923
|
version: "0"
|