veewee 0.4.1 → 0.4.2

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NjZjNmNkY2FiMjZjZGM0ZTk0ODUwYThmYzhiMzBmYWZkOGI4YmFkOA==
4
+ MDY0M2Q2ZDk2NGZkYTY4MzcwY2E3MTFjY2ZiY2ZjNDY5NDc5Yzg2Mg==
5
5
  data.tar.gz: !binary |-
6
- MjUyM2UzZWIzOTJiNDk2YzBjOTU0YmYwOGMxNmIwNDcxNjYzMmEwMg==
6
+ YWQ4ODA1N2QwOGRhZTBhNDZmZGMyOTkyY2RmNDVkYThjYmYwODE0NQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OTM3MzVlYzQ3NTZhNTEyODIwMjQ3NDcyMDNjNzFhZGNmOTk0MmViOTE1ZGVi
10
- OTAyNjM3OWM4ZTY2MGQ2N2I2N2IxODA1YWJkMzE5MWEyNTYyZDliZTA4NDZh
11
- NzVhOWNkN2M0M2FkMDM0OTY3YmU5MmUxYmVlNTYxOTA0ODBiNWY=
9
+ NzQ3MGQ0OTdiMmJjNDA5ZTEzZWFmMjEwMjE2ZGU5OWU4MTZiZjQ4MjA3OTMx
10
+ MDVlNWVhNzExMGMzMjY2ZGMxNjhmNDAxYjBlYWFkMTkzZmJkYTdhOWM4MDhj
11
+ ZGUxYjQzNGM3ZGYwYmQ1ZDNlZmE2N2Y4ZDgwN2ZkZWNjYTQ0YTQ=
12
12
  data.tar.gz: !binary |-
13
- OWU3ZmQwMTRmY2JjNTI0YTFhYzNlMWU1YWExZDhjZWRjYjFjOGI1MjFlOTM5
14
- OWI5ODlhMjA0MGJmN2NmNmQwMjVlY2U3ZjExYTM1YWYyNTNlOGQ2MGRlOWM0
15
- NWI3MmYwODM4ZWVkMDI5NzhhMjFjMGFiODE2OTM1YzlkMDQyMGY=
13
+ NThmYzRkZmU5YjA0OGMyNWM5ZjdlOGQ2NTVhZjgzYjdlZGI2YWYwMjYxZmUz
14
+ NDA4OTFiNzI4ZDc5MzQzMDQzM2YxN2FjMDMzNGM2NGQxN2NmNGRlODU0NDNl
15
+ Y2NjNjMzZDg2NzkwYWRjOWI1ZTZkZjZiN2ZhNmYzMWI4MzBhNDQ=
@@ -24,13 +24,11 @@ module Fission
24
24
 
25
25
  fusion_version = :unknown
26
26
 
27
- if File.exists?("/Library/Application Support/VMware Fusion/vmrun")
28
- @attributes['vmrun_bin'] = '/Library/Application Support/VMware Fusion/vmrun'
29
- end
30
-
31
- if File.exists?("/Applications/VMware Fusion.app/Contents/Library/vmrun")
32
- @attributes['vmrun_bin'] = "/Applications/VMware Fusion.app/Contents/Library/vmrun"
33
- end
27
+ @attributes['vmrun_bin'] = %w{
28
+ /Library/Application Support/VMware Fusion/vmrun
29
+ /Applications/VMware Fusion.app/Contents/Library/vmrun
30
+ /usr/local/bin/vmrun
31
+ }.find { |path| File.exists?(path) }
34
32
 
35
33
  if fusion_version == :unknown
36
34
  end
@@ -70,7 +70,7 @@ module Veewee
70
70
  until thestring.length == 0
71
71
  nospecial=true;
72
72
  @@special_keys.keys.each { |key|
73
- if thestring.start_with?(key)
73
+ if thestring.match(/^#{key}/i)
74
74
  #take thestring
75
75
  #check if it starts with a special key + pop special string
76
76
  keycodes=keycodes+@@special_keys[key]+' ';
@@ -10,11 +10,10 @@ module Veewee
10
10
  def check_requirements
11
11
  require 'fission'
12
12
 
13
- if File.exists?("/Library/Application Support/VMware Fusion/vmrun")
14
- ::Fission.config.attributes["vmrun_bin"] = "/Library/Application Support/VMware Fusion/vmrun"
15
- elsif File.exists?("/Applications/VMware Fusion.app/Contents/Library/vmrun")
16
- ::Fission.config.attributes["vmrun_bin"] = "/Applications/VMware Fusion.app/Contents/Library/vmrun"
17
- elsif
13
+ if
14
+ ::Fission.config.attributes["vmrun_bin"].nil? ||
15
+ !File.exists?(::Fission.config.attributes["vmrun_bin"])
16
+ then
18
17
  raise Veewee::Error,"Could not find vmrun at standard locations. Probably you don't have Vmware fusion installed"
19
18
  end
20
19
  env.logger.info("Found fusion version: #{fusion_version}")
@@ -4,5 +4,5 @@ end
4
4
 
5
5
  # Only set the version constant if it wasn't set before
6
6
  unless defined?(Veewee::VERSION)
7
- ::Veewee::VERSION="0.4.1"
7
+ ::Veewee::VERSION="0.4.2"
8
8
  end
@@ -29,7 +29,7 @@ cd /usr/ports/ports-mgmt/pkg
29
29
  make -DBATCH install
30
30
 
31
31
  # Install binary packages versions of dependencies
32
- pkg install -y sudo bash chef puppet portupgrade perl5 kBuild yasm
32
+ pkg install -y sudo bash rubygem-chef puppet portupgrade perl5 kBuild yasm
33
33
 
34
34
  cat >> /etc/make.conf << EOT
35
35
  WITH_ETCSYMLINK="YES"
@@ -0,0 +1,20 @@
1
+
2
+ # Apt-install various things necessary for Ruby, guest additions,
3
+ # etc., and remove optional things to trim down the machine.
4
+ apt-get -y update
5
+ apt-get -y upgrade
6
+ apt-get -y install gcc build-essential linux-headers-$(uname -r)
7
+ apt-get -y install zlib1g-dev libssl-dev libreadline-gplv2-dev libyaml-dev
8
+ apt-get -y install vim curl
9
+ apt-get clean
10
+
11
+ # Set up sudo
12
+ ( cat <<'EOP'
13
+ %vagrant ALL=NOPASSWD:ALL
14
+ EOP
15
+ ) > /tmp/vagrant
16
+ chmod 0440 /tmp/vagrant
17
+ mv /tmp/vagrant /etc/sudoers.d/
18
+
19
+ # Install NFS client
20
+ apt-get -y install nfs-common
@@ -0,0 +1,2 @@
1
+ # Install Chef
2
+ curl -L https://www.opscode.com/chef/install.sh | sudo bash
@@ -0,0 +1,23 @@
1
+ # Remove items used for building, since they aren't needed anymore
2
+
3
+ apt-get -y remove linux-headers-$(uname -r) build-essential
4
+ apt-get -y autoremove
5
+
6
+ #Clean up tmp
7
+ rm -rf /tmp/*
8
+
9
+ # Removing leftover leases and persistent rules
10
+ echo "cleaning up dhcp leases"
11
+ rm /var/lib/dhcp/*
12
+
13
+ # Make sure Udev doesn't block our network
14
+ # http://6.ptmc.org/?p=164
15
+ echo "cleaning up udev rules"
16
+ rm /etc/udev/rules.d/70-persistent-net.rules
17
+ mkdir /etc/udev/rules.d/70-persistent-net.rules
18
+ rm -rf /dev/.udev/
19
+ rm /lib/udev/rules.d/75-persistent-net-generator.rules
20
+
21
+ echo "Adding a 2 sec delay to the interface up, to make the dhclient happy"
22
+ echo "pre-up sleep 2" >> /etc/network/interfaces
23
+ exit
@@ -0,0 +1,44 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1',
3
+ :memory_size=> '512',
4
+ :disk_size => '10140',
5
+ :disk_format => 'VDI',
6
+ :hostiocache => 'off',
7
+ :os_type_id => 'Ubuntu_64',
8
+ :iso_file => "ubuntu-12.04.3-server-amd64.iso",
9
+ :iso_src => "http://releases.ubuntu.com/12.04/ubuntu-12.04.3-server-amd64.iso",
10
+ :iso_md5 => '2cbe868812a871242cdcdd8f2fd6feb9',
11
+ :iso_download_timeout => "1000",
12
+ :boot_wait => "4",
13
+ :boot_cmd_sequence => [
14
+ '<Esc><Esc><Enter>',
15
+ '/install/vmlinuz noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
16
+ 'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
17
+ 'hostname=%NAME% ',
18
+ 'fb=false debconf/frontend=noninteractive ',
19
+ 'keyboard-configuration/modelcode=SKIP keyboard-configuration/layout=USA keyboard-configuration/variant=USA console-setup/ask_detect=false ',
20
+ 'initrd=/install/initrd.gz -- <Enter>'
21
+ ],
22
+ :kickstart_port => "7122",
23
+ :kickstart_timeout => "10000",
24
+ :kickstart_file => "preseed.cfg",
25
+ :ssh_login_timeout => "10000",
26
+ :ssh_user => "vagrant",
27
+ :ssh_password => "vagrant",
28
+ :ssh_key => "",
29
+ :ssh_host_port => "7222",
30
+ :ssh_guest_port => "22",
31
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
32
+ :shutdown_cmd => "shutdown -P now",
33
+ :postinstall_files => [
34
+ "base.sh",
35
+ "vagrant.sh",
36
+ "parallels.sh",
37
+ "ruby.sh",
38
+ "puppet.sh",
39
+ "chef.sh",
40
+ "cleanup.sh",
41
+ "zerodisk.sh"
42
+ ],
43
+ :postinstall_timeout => "10000"
44
+ })
@@ -0,0 +1,4 @@
1
+ PARALLELS_TOOLS_ISO=prl-tools-lin.iso
2
+ mount -o loop $PARALLELS_TOOLS_ISO /media/cdrom
3
+ /media/cdrom/install --install-unattended-with-deps --progress
4
+ umount /media/cdrom
@@ -0,0 +1,87 @@
1
+ ## Options to set on the command line
2
+ d-i debian-installer/locale string en_US.utf8
3
+ d-i console-setup/ask_detect boolean false
4
+ d-i console-setup/layout string USA
5
+
6
+ #d-i netcfg/get_hostname string dummy
7
+ d-i netcfg/get_hostname string unassigned-hostname
8
+ d-i netcfg/get_domain string unassigned-domain
9
+
10
+ # Continue without a default route
11
+ # Not working , specify a dummy in the DHCP
12
+ #d-i netcfg/no_default_route boolean
13
+
14
+ d-i time/zone string UTC
15
+ d-i clock-setup/utc-auto boolean true
16
+ d-i clock-setup/utc boolean true
17
+
18
+ d-i kbd-chooser/method select American English
19
+
20
+ d-i netcfg/wireless_wep string
21
+
22
+ d-i base-installer/kernel/override-image string linux-server
23
+ #d-i base-installer/kernel/override-image string linux-image-2.6.32-21-generic
24
+
25
+ # Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive
26
+ d-i debconf debconf/frontend select Noninteractive
27
+
28
+ d-i pkgsel/install-language-support boolean false
29
+ tasksel tasksel/first multiselect standard, ubuntu-server
30
+
31
+ #d-i partman-auto/method string regular
32
+ d-i partman-auto/method string lvm
33
+ #d-i partman-auto/purge_lvm_from_device boolean true
34
+
35
+ d-i partman-lvm/confirm boolean true
36
+ d-i partman-lvm/device_remove_lvm boolean true
37
+ d-i partman-auto/choose_recipe select atomic
38
+
39
+ d-i partman/confirm_write_new_label boolean true
40
+ d-i partman/confirm_nooverwrite boolean true
41
+ d-i partman/choose_partition select finish
42
+ d-i partman/confirm boolean true
43
+
44
+ #http://ubuntu-virginia.ubuntuforums.org/showthread.php?p=9626883
45
+ #Message: "write the changes to disk and configure lvm preseed"
46
+ #http://serverfault.com/questions/189328/ubuntu-kickstart-installation-using-lvm-waits-for-input
47
+ #preseed partman-lvm/confirm_nooverwrite boolean true
48
+
49
+ # Write the changes to disks and configure LVM?
50
+ d-i partman-lvm/confirm boolean true
51
+ d-i partman-lvm/confirm_nooverwrite boolean true
52
+ d-i partman-auto-lvm/guided_size string max
53
+
54
+ ## Default user, we can get away with a recipe to change this
55
+ d-i passwd/user-fullname string vagrant
56
+ d-i passwd/username string vagrant
57
+ d-i passwd/user-password password vagrant
58
+ d-i passwd/user-password-again password vagrant
59
+ d-i user-setup/encrypt-home boolean false
60
+ d-i user-setup/allow-password-weak boolean true
61
+
62
+ ## minimum is puppet and ssh and ntp
63
+ # Individual additional packages to install
64
+ d-i pkgsel/include string openssh-server ntp
65
+
66
+ # Whether to upgrade packages after debootstrap.
67
+ # Allowed values: none, safe-upgrade, full-upgrade
68
+ d-i pkgsel/upgrade select full-upgrade
69
+
70
+ d-i grub-installer/only_debian boolean true
71
+ d-i grub-installer/with_other_os boolean true
72
+ d-i finish-install/reboot_in_progress note
73
+
74
+ #For the update
75
+ d-i pkgsel/update-policy select none
76
+
77
+ # debconf-get-selections --install
78
+ #Use mirror
79
+ #d-i apt-setup/use_mirror boolean true
80
+ #d-i mirror/country string manual
81
+ #choose-mirror-bin mirror/protocol string http
82
+ #choose-mirror-bin mirror/http/hostname string 192.168.4.150
83
+ #choose-mirror-bin mirror/http/directory string /ubuntu
84
+ #choose-mirror-bin mirror/suite select maverick
85
+ #d-i debian-installer/allow_unauthenticated string true
86
+
87
+ choose-mirror-bin mirror/http/proxy string
@@ -0,0 +1,7 @@
1
+ # Prepare puppetlabs repo
2
+ wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb
3
+ dpkg -i puppetlabs-release-precise.deb
4
+ apt-get update
5
+
6
+ # Install puppet/facter
7
+ apt-get install -y puppet facter
@@ -0,0 +1,26 @@
1
+ # Install Ruby from source in /opt so that users of Vagrant
2
+ # can install their own Rubies using packages or however.
3
+
4
+ apt-get -y install libyaml-0-2
5
+ RUBY_VERSION=1.9.3-p392
6
+ wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-$RUBY_VERSION.tar.gz
7
+ tar xvzf ruby-$RUBY_VERSION.tar.gz
8
+ cd ruby-$RUBY_VERSION
9
+ ./configure --prefix=/opt/ruby
10
+ make
11
+ make install
12
+ cd ..
13
+ rm -rf ruby-$RUBY_VERSION
14
+
15
+ # Install RubyGems 1.8.25
16
+ RUBYGEMS_VERSION=1.8.25
17
+ wget http://production.cf.rubygems.org/rubygems/rubygems-$RUBYGEMS_VERSION.tgz
18
+ tar xzf rubygems-$RUBYGEMS_VERSION.tgz
19
+ cd rubygems-$RUBYGEMS_VERSION
20
+ /opt/ruby/bin/ruby setup.rb
21
+ cd ..
22
+ rm -rf rubygems-$RUBYGEMS_VERSION
23
+
24
+ # Add /opt/ruby/bin to the global path as the last resort so
25
+ # Ruby, RubyGems, and Chef/Puppet are visible
26
+ echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
@@ -0,0 +1,12 @@
1
+ date > /etc/vagrant_box_build_time
2
+
3
+ # Setup sudo to allow no-password sudo for "sudo"
4
+ usermod -a -G sudo vagrant
5
+
6
+ # Installing vagrant keys
7
+ mkdir /home/vagrant/.ssh
8
+ chmod 700 /home/vagrant/.ssh
9
+ cd /home/vagrant/.ssh
10
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
11
+ chmod 600 /home/vagrant/.ssh/authorized_keys
12
+ chown -R vagrant /home/vagrant/.ssh
@@ -0,0 +1,33 @@
1
+ if test -f .vmfusion_version ; then [15/436]
2
+
3
+ cd /tmp
4
+ mkdir -p /mnt/cdrom
5
+ mount -o loop /home/vagrant/linux.iso /mnt/cdrom
6
+ tar zxvf /mnt/cdrom/VMwareTools-*.tar.gz -C /tmp/
7
+ /tmp/vmware-tools-distrib/vmware-install.pl -d
8
+ rm /home/vagrant/linux.iso
9
+ umount /mnt/cdrom
10
+
11
+ fi
12
+
13
+ if test -f .vbox_version ; then [3/436]
14
+
15
+ # Without libdbus virtualbox would not start automatically after compile
16
+ apt-get -y install --no-install-recommends libdbus-1-3
17
+
18
+ # The netboot installs the VirtualBox support (old) so we have to remove it
19
+ /etc/init.d/virtualbox-ose-guest-utils stop
20
+ rmmod vboxguest
21
+ aptitude -y purge virtualbox-ose-guest-x11 virtualbox-ose-guest-dkms virtualbox-ose-guest-utils
22
+ aptitude -y install dkms
23
+
24
+ # Install the VirtualBox guest additions
25
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
26
+ VBOX_ISO=VBoxGuestAdditions_$VBOX_VERSION.iso
27
+ mount -o loop $VBOX_ISO /mnt
28
+ yes|sh /mnt/VBoxLinuxAdditions.run
29
+ umount /mnt
30
+
31
+ #Cleanup VirtualBox
32
+ rm $VBOX_ISO
33
+ fi
@@ -0,0 +1,3 @@
1
+ # Zero out the free space to save space in the final image:
2
+ dd if=/dev/zero of=/EMPTY bs=1M
3
+ rm -f /EMPTY
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: veewee
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Patrick Debois
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-05 00:00:00.000000000 Z
11
+ date: 2014-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-ssh
@@ -2008,6 +2008,17 @@ files:
2008
2008
  - templates/ubuntu-12.04.3-desktop-i386/sudo.sh
2009
2009
  - templates/ubuntu-12.04.3-desktop-i386/vagrant.sh
2010
2010
  - templates/ubuntu-12.04.3-desktop-i386/vbox.sh
2011
+ - templates/ubuntu-12.04.3-server-amd64-parallels/base.sh
2012
+ - templates/ubuntu-12.04.3-server-amd64-parallels/chef.sh
2013
+ - templates/ubuntu-12.04.3-server-amd64-parallels/cleanup.sh
2014
+ - templates/ubuntu-12.04.3-server-amd64-parallels/definition.rb
2015
+ - templates/ubuntu-12.04.3-server-amd64-parallels/parallels.sh
2016
+ - templates/ubuntu-12.04.3-server-amd64-parallels/preseed.cfg
2017
+ - templates/ubuntu-12.04.3-server-amd64-parallels/puppet.sh
2018
+ - templates/ubuntu-12.04.3-server-amd64-parallels/ruby.sh
2019
+ - templates/ubuntu-12.04.3-server-amd64-parallels/vagrant.sh
2020
+ - templates/ubuntu-12.04.3-server-amd64-parallels/vmtools.sh
2021
+ - templates/ubuntu-12.04.3-server-amd64-parallels/zerodisk.sh
2011
2022
  - templates/ubuntu-12.04.3-server-amd64/base.sh
2012
2023
  - templates/ubuntu-12.04.3-server-amd64/chef.sh
2013
2024
  - templates/ubuntu-12.04.3-server-amd64/cleanup.sh