From 5cebc226cc0d734936a3d63e10027d46f39e8025 Mon Sep 17 00:00:00 2001 From: Charles Hooper Date: Tue, 26 Mar 2013 17:40:56 +0000 Subject: [PATCH 1/5] Use new AMI that won't cause issues with cloud-init apply_creds --- Vagrantfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Vagrantfile b/Vagrantfile index 4cf5f0a0e5..36f72b907e 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -119,8 +119,8 @@ end aws.keypair_name = ENV["AWS_KEYPAIR_NAME"] aws.ssh_private_key_path = ENV["AWS_SSH_PRIVKEY"] aws.region = "us-east-1" - aws.ami = "ami-1c1e8075" - aws.ssh_username = "vagrant" + aws.ami = "ami-4a7de623" + aws.ssh_username = "ubuntu" aws.instance_type = "t1.micro" end config.vm.provider :virtualbox do |vb| From afdf29e57fe2213698645298c2381cab27baadc0 Mon Sep 17 00:00:00 2001 From: Charles Hooper Date: Tue, 26 Mar 2013 21:21:54 +0000 Subject: [PATCH 2/5] Fix issue where Vagrant AWS deploys outside of my dev account would fail --- Vagrantfile | 4 +-- puppet/modules/docker/manifests/init.pp | 42 +++++++++++++++++-------- 2 files changed, 31 insertions(+), 15 deletions(-) diff --git a/Vagrantfile b/Vagrantfile index 36f72b907e..db52a1e1b4 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -25,7 +25,7 @@ def v10(config) # Assign this VM to a bridged network, allowing you to connect directly to a # network using the host's network device. This makes the VM appear as another # physical device on your network. - # config.vm.network :bridged + #config.vm.network :bridged # Forward a port from the guest to the host, which allows for outside # computers to access the VM, whereas host only networking does not. @@ -119,7 +119,7 @@ end aws.keypair_name = ENV["AWS_KEYPAIR_NAME"] aws.ssh_private_key_path = ENV["AWS_SSH_PRIVKEY"] aws.region = "us-east-1" - aws.ami = "ami-4a7de623" + aws.ami = "ami-4e75ee27" aws.ssh_username = "ubuntu" aws.instance_type = "t1.micro" end diff --git a/puppet/modules/docker/manifests/init.pp b/puppet/modules/docker/manifests/init.pp index 6f8d249ff7..8f68435a49 100644 --- a/puppet/modules/docker/manifests/init.pp +++ b/puppet/modules/docker/manifests/init.pp @@ -1,12 +1,26 @@ class virtualbox { Package { ensure => "installed" } + user { "vagrant": + name => "vagrant", + ensure => present, + comment => "Vagrant User", + shell => "/bin/bash", + home => "/home/vagrant", + } + + file { "/home/vagrant": + mode => 644, + require => User["vagrant"], + } + # remove some files from the base vagrant image because they're old file { "/home/vagrant/docker-master": ensure => absent, recurse => true, force => true, purge => true, + require => File["/home/vagrant"], } file { "/usr/local/bin/dockerd": ensure => absent, @@ -23,10 +37,21 @@ class virtualbox { } class ec2 { + user { "vagrant": + name => "ubuntu", + ensure => present, + comment => "Vagrant User", + shell => "/bin/bash", + home => "/home/ubuntu", + } + file { "/home/vagrant": + ensure => link, + target => "/home/ubuntu", + require => User["vagrant"], + } } class docker { - # update this with latest docker binary distro $docker_url = "http://get.docker.io/builds/$kernel/$hardwaremodel/docker-master.tgz" # update this with latest go binary distry @@ -44,19 +69,14 @@ class docker { $ec2_version = file("/etc/ec2_version", "/dev/null") if ($ec2_version) { + $vagrant_user = "ubuntu" include ec2 } else { + $vagrant_user = "vagrant" # virtualbox is the vagrant default, so it should be safe to assume include virtualbox } - user { "vagrant": - ensure => present, - comment => "Vagrant User", - shell => "/bin/bash", - home => "/home/vagrant", - } - file { "/usr/local/bin": ensure => directory, owner => root, @@ -83,14 +103,10 @@ class docker { require => Exec["copy-docker-bin"], } - file { "/home/vagrant": - mode => 644, - require => User["vagrant"], - } file { "/home/vagrant/.profile": mode => 644, - owner => "vagrant", + owner => $vagrant_user, group => "ubuntu", content => template("docker/profile"), require => File["/home/vagrant"], From 2b7284db4f4c5b311eadd0432577bf0c263c2cce Mon Sep 17 00:00:00 2001 From: Charles Hooper Date: Wed, 27 Mar 2013 01:20:45 +0000 Subject: [PATCH 3/5] Remove duplicate user definition --- puppet/modules/docker/manifests/init.pp | 7 ------- 1 file changed, 7 deletions(-) diff --git a/puppet/modules/docker/manifests/init.pp b/puppet/modules/docker/manifests/init.pp index ee357ff2d5..8f8c04cd33 100644 --- a/puppet/modules/docker/manifests/init.pp +++ b/puppet/modules/docker/manifests/init.pp @@ -86,13 +86,6 @@ class docker { include virtualbox } - user { "vagrant": - ensure => present, - comment => "Vagrant User", - shell => "/bin/bash", - home => "/home/vagrant", - } - file { "/usr/local/bin": ensure => directory, owner => root, From 5bec4b8f040f366a5a1eed294d98e383d64b46e7 Mon Sep 17 00:00:00 2001 From: Charles Hooper Date: Wed, 27 Mar 2013 01:41:06 +0000 Subject: [PATCH 4/5] Fix Rackspace cloud user, remove dupe /home/vagrant definition --- puppet/modules/docker/manifests/init.pp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/puppet/modules/docker/manifests/init.pp b/puppet/modules/docker/manifests/init.pp index 8f8c04cd33..843cd021f1 100644 --- a/puppet/modules/docker/manifests/init.pp +++ b/puppet/modules/docker/manifests/init.pp @@ -52,6 +52,18 @@ class ec2 { } class rax { + user { "vagrant": + name => "ubuntu", + ensure => present, + comment => "Vagrant User", + shell => "/bin/bash", + home => "/home/ubuntu", + } + file { "/home/vagrant": + ensure => link, + target => "/home/ubuntu", + require => User["vagrant"], + } } class docker { @@ -112,12 +124,6 @@ class docker { require => Exec["copy-docker-bin"], } - file { "/home/vagrant": - ensure => directory, - mode => 644, - require => User["vagrant"], - } - file { "/home/vagrant/.profile": mode => 644, owner => $vagrant_user, From 8461196a794d0ccd42b958fd93b833b7df9a8ca5 Mon Sep 17 00:00:00 2001 From: Charles Hooper Date: Wed, 27 Mar 2013 01:41:47 +0000 Subject: [PATCH 5/5] Stop using custom AMI and use standard Ubuntu AMI --- Vagrantfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Vagrantfile b/Vagrantfile index 51614c5c20..37ad298b32 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -119,10 +119,11 @@ end aws.keypair_name = ENV["AWS_KEYPAIR_NAME"] aws.ssh_private_key_path = ENV["AWS_SSH_PRIVKEY"] aws.region = "us-east-1" - aws.ami = "ami-4e75ee27" + aws.ami = "ami-ae9806c7" aws.ssh_username = "ubuntu" aws.instance_type = "t1.micro" end + config.vm.provider :rackspace do |rs| config.vm.box = "dummy" config.vm.box_url = "https://github.com/mitchellh/vagrant-rackspace/raw/master/dummy.box" @@ -133,6 +134,7 @@ end rs.flavor = /512MB/ rs.image = /Ubuntu/ end + config.vm.provider :virtualbox do |vb| config.vm.box = "quantal64_3.5.0-25" config.vm.box_url = "http://get.docker.io/vbox/ubuntu/12.10/quantal64_3.5.0-25.box"