← Back to team overview

opencompute-developers team mailing list archive

[Merge] lp:~bladernr/opencompute/ppoc-add-vagrant into lp:opencompute/plainbox-provider-opencompute-certification

 

Jeff Lane has proposed merging lp:~bladernr/opencompute/ppoc-add-vagrant into lp:opencompute/plainbox-provider-opencompute-certification.

Requested reviews:
  Jeff Lane (bladernr)

For more details, see:
https://code.launchpad.net/~bladernr/opencompute/ppoc-add-vagrant/+merge/224506

Added Vagrant capabilities to trunk
-- 
https://code.launchpad.net/~bladernr/opencompute/ppoc-add-vagrant/+merge/224506
Your team Open Compute Developers is subscribed to branch lp:opencompute/plainbox-provider-opencompute-certification.
=== added directory '.vagrant'
=== added directory '.vagrant/machines'
=== added directory '.vagrant/machines/trusty'
=== added directory '.vagrant/machines/trusty/virtualbox'
=== added file '.vagrant/machines/trusty/virtualbox/action_provision'
--- .vagrant/machines/trusty/virtualbox/action_provision	1970-01-01 00:00:00 +0000
+++ .vagrant/machines/trusty/virtualbox/action_provision	2014-06-25 19:32:05 +0000
@@ -0,0 +1,1 @@
+1403723099
\ No newline at end of file

=== added file '.vagrant/machines/trusty/virtualbox/action_set_name'
--- .vagrant/machines/trusty/virtualbox/action_set_name	1970-01-01 00:00:00 +0000
+++ .vagrant/machines/trusty/virtualbox/action_set_name	2014-06-25 19:32:05 +0000
@@ -0,0 +1,1 @@
+1403723042
\ No newline at end of file

=== added file '.vagrant/machines/trusty/virtualbox/id'
--- .vagrant/machines/trusty/virtualbox/id	1970-01-01 00:00:00 +0000
+++ .vagrant/machines/trusty/virtualbox/id	2014-06-25 19:32:05 +0000
@@ -0,0 +1,1 @@
+88c7f7e4-93d8-49f0-9c92-01920beea813
\ No newline at end of file

=== added file 'Vagrantfile'
--- Vagrantfile	1970-01-01 00:00:00 +0000
+++ Vagrantfile	2014-06-25 19:32:05 +0000
@@ -0,0 +1,149 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
+VAGRANTFILE_API_VERSION = "2"
+
+Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
+  # All Vagrant configuration is done here. The most common configuration
+  # options are documented and commented below. For a complete reference,
+  # please see the online documentation at vagrantup.com.
+
+  # Config Ubuntu Server image (cloud) for the 14.04 release (trusty)
+  config.vm.define :trusty do |trusty_config|
+    trusty_config.vm.box = "trusty-cloud-amd64"
+    trusty_config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box";
+  end
+  # Create a forwarded port mapping which allows access to a specific port
+  # within the machine from a port on the host machine. In the example below,
+  # accessing "localhost:8080" will access port 80 on the guest machine.
+  # config.vm.network :forwarded_port, guest: 80, host: 8080
+
+  # Create a private network, which allows host-only access to the machine
+  # using a specific IP.
+  # config.vm.network :private_network, ip: "192.168.33.10"
+
+  # Create a public network, which generally matched to bridged network.
+  # Bridged networks make the machine appear as another physical device on
+  # your network.
+  # config.vm.network :public_network
+
+  # If true, then any SSH connections made will enable agent forwarding.
+  # Default value: false
+  # config.ssh.forward_agent = true
+
+  # Share an additional folder to the guest VM. The first argument is
+  # the path on the host to the actual folder. The second argument is
+  # the path on the guest to mount the folder. And the optional third
+  # argument is a set of non-required options.
+  # config.vm.synced_folder ".", "/development_source"
+
+  # Provider-specific configuration so you can fine-tune various
+  # backing providers for Vagrant. These expose provider-specific options.
+  # Example for VirtualBox:
+  #
+  # config.vm.provider :virtualbox do |vb|
+  #   # Don't boot with headless mode
+  #   vb.gui = true
+  #
+  #   # Use VBoxManage to customize the VM. For example to change memory:
+  #   vb.customize ["modifyvm", :id, "--memory", "1024"]
+  # end
+  #
+  # View the documentation for the provider you're using for more
+  # information on available options.
+
+  # Enable provisioning with Puppet stand alone.  Puppet manifests
+  # are contained in a directory path relative to this Vagrantfile.
+  # You will need to create the manifests directory and a manifest in
+  # the file base.pp in the manifests_path directory.
+  #
+  # An example Puppet manifest to provision the message of the day:
+  #
+  # # group { "puppet":
+  # #   ensure => "present",
+  # # }
+  # #
+  # # File { owner => 0, group => 0, m
+  # #
+  # # file { '/etc/motd':
+  # #   content => "Welcome to your Vagrant-built virtual machine!
+  # #               Managed by Puppet.\n"
+  # # }
+  #
+  # config.vm.provision :puppet do |puppet|
+  #   puppet.manifests_path = "manifests"
+  #   puppet.manifest_file  = "site.pp"
+  # end
+
+  # Enable provisioning with chef solo, specifying a cookbooks path, roles
+  # path, and data_bags path (all relative to this Vagrantfile), and adding
+  # some recipes and/or roles.
+  #
+  # config.vm.provision :chef_solo do |chef|
+  #   chef.cookbooks_path = "../my-recipes/cookbooks"
+  #   chef.roles_path = "../my-recipes/roles"
+  #   chef.data_bags_path = "../my-recipes/data_bags"
+  #   chef.add_recipe "mysql"
+  #   chef.add_role "web"
+  #
+  #   # You may also specify custom JSON attributes:
+  #   chef.json = { :mysql_password => "foo" }
+  # end
+
+  # Enable provisioning with chef server, specifying the chef server URL,
+  # and the path to the validation key (relative to this Vagrantfile).
+  #
+  # The Opscode Platform uses HTTPS. Substitute your organization for
+  # ORGNAME in the URL and validation key.
+  #
+  # If you have your own Chef Server, use the appropriate URL, which may be
+  # HTTP instead of HTTPS depending on your configuration. Also change the
+  # validation key to validation.pem.
+  #
+  # config.vm.provision :chef_client do |chef|
+  #   chef.chef_server_url = "https://api.opscode.com/organizations/ORGNAME";
+  #   chef.validation_key_path = "ORGNAME-validator.pem"
+  # end
+  #
+  # If you're using the Opscode platform, your validator client is
+  # ORGNAME-validator, replacing ORGNAME with your organization name.
+  #
+  # If you have your own Chef Server, the default validation client name is
+  # chef-validator, unless you changed the configuration.
+  #
+  #   chef.validation_client_name = "ORGNAME-validator"
+  #
+  #CUSTOMIZATIONS
+  
+  #For debugging and later future GUI testing
+  if ENV.key? "VAGRANT_GUI"
+    config.vm.boot_mode = :gui
+  end
+
+  #Set up an apt-cache if one is available
+  if ENV.key? "VAGRANT_APT_CACHE"
+    config.vm.provision :shell, :inline => "echo 'Acquire::http { Proxy \"#{ENV['VAGRANT_APT_CACHE']}\"; };' > /etc/apt/apt.conf"
+  end
+
+  # Update to have the latest packages, this is needed because the image comes
+  # with an old (and no longer working) apt cache and links to many packages
+  # no longer work.
+  config.vm.provision :shell, :inline => "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade --yes"
+  # Install dependencies from native packages
+  config.vm.provision :shell, :inline => "apt-get install --yes python3-setuptools python3-pkg-resources python3-lxml"
+  # Install python3-mock so that we can create mock objects for testing
+  config.vm.provision :shell, :inline => "apt-get install --yes python3-mock"
+  # Install python3-sphinx so that we can build documentation
+  config.vm.provision :shell, :inline => "apt-get install --yes python3-sphinx"
+  # Install policykit-1 so that we have pkexec
+  config.vm.provision :shell, :inline => "apt-get install --yes policykit-1"
+  # Install some checkbox script dependencies:
+  # Later on those could be installed on demand to test how we
+  # behave without them but for now that's good enough. Little by little...
+  config.vm.provision :shell, :inline => "apt-get install --yes fwts"
+  # Develop plainbox so that we have it in $PATH
+  config.vm.provision :shell, :inline => "cd /vagrant/plainbox/ && python3 setup.py develop"
+  # Create a cool symlink so that everyone knows where to go to
+  config.vm.provision :shell, :inline => "ln --no-dereference --force --symbolic /vagrant /home/vagrant/plainbox-provider-opencompute-certification"
+end

=== modified file 'debian/changelog'
--- debian/changelog	2014-06-19 15:35:28 +0000
+++ debian/changelog	2014-06-25 19:32:05 +0000
@@ -1,3 +1,9 @@
+plainbox-provider-opencompute-certification (0.1~ocp4) trusty; urgency=medium
+
+  * Added Vagrant abilities for development.  
+
+ -- Jeff Lane <jeff@xxxxxxxxxx>  Wed, 25 Jun 2014 15:07:07 -0400
+
 plainbox-provider-opencompute-certification (0.1~ocp3) trusty; urgency=medium
 
   * Initial release.


Follow ups