migrant-boxes 0.1.4 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,2 +1,3 @@
1
1
  require 'migrant/bootstrappers/base'
2
2
  require 'migrant/bootstrappers/ruby_local_192'
3
+ require 'migrant/bootstrappers/ruby_local_193'
@@ -3,7 +3,6 @@ module Migrant
3
3
  # Installs Ruby 1.9.2 into /usr/local
4
4
  class RubyLocal192 < Base
5
5
  register(:rbenv_192)
6
- default_bootstrapper
7
6
 
8
7
  def initialize(env)
9
8
  super
@@ -0,0 +1,33 @@
1
+ module Migrant
2
+ module Bootstrappers
3
+ # Installs Ruby 1.9.3 into /usr/local
4
+ class RubyLocal193 < Base
5
+ register(:rbenv_193)
6
+ default_bootstrapper
7
+
8
+ def initialize(env)
9
+ super
10
+ end
11
+
12
+ def run
13
+ commands = [
14
+ 'sudo apt-get update',
15
+ 'sudo apt-get install -y build-essential wget build-essential bison openssl libreadline5 libreadline-dev ' +
16
+ 'curl git-core zlib1g zlib1g-dev libssl-dev vim libsqlite3-0 libsqlite3-dev ' +
17
+ 'sqlite3 libreadline-dev libxml2-dev autoconf',
18
+ 'rm -rf /tmp/ruby-build',
19
+ 'git clone https://github.com/sstephenson/ruby-build.git /tmp/ruby-build',
20
+ 'cd /tmp/ruby-build && sudo ./install.sh',
21
+ 'sudo ruby-build 1.9.3-p0 /usr/local',
22
+ 'sudo gem install bundler chef'
23
+ ]
24
+ @environment.cloud.execute commands
25
+ end
26
+
27
+ def bootstrapped?
28
+ result = @environment.server.ssh('/usr/local/bin/chef-solo --version')
29
+ result[0].status == 0
30
+ end
31
+ end
32
+ end
33
+ end
data/lib/migrant/boxes.rb CHANGED
@@ -50,6 +50,13 @@ module Migrant
50
50
  environment = 'default' if environment.nil?
51
51
  box = Box.new(provider,id)
52
52
  self[environment] = box
53
+ self
54
+ end
55
+
56
+ def remove(environment)
57
+ environment = 'default' if environment.nil?
58
+ @boxes['boxes'].delete(environment)
59
+ self
53
60
  end
54
61
  end
55
62
  end
@@ -114,9 +114,9 @@ module Migrant
114
114
  if box.nil?
115
115
  @ui.error "There are currently no boxes running"
116
116
  else
117
- #XXX Don't wnat to delete the file, just remove the part about this box.
118
117
  if @cloud.destroy(box)
119
- FileUtils.rm DEFAULT_BOXES_PATH
118
+ @boxes.remove @environment_name
119
+ @boxes.save
120
120
  end
121
121
  end
122
122
  end
@@ -1,3 +1,3 @@
1
1
  module Migrant
2
- VERSION = "0.1.4"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -58,5 +58,10 @@ describe Migrant::Boxes do
58
58
  it 'writes an instance id' do
59
59
  boxes['testing'].id.should == '123456'
60
60
  end
61
+
62
+ it 'removes environments' do
63
+ boxes.remove('testing').save
64
+ boxes['testing'].should be_nil
65
+ end
61
66
  end
62
67
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: migrant-boxes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-11-09 00:00:00.000000000Z
12
+ date: 2012-02-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thor
16
- requirement: &2161836740 !ruby/object:Gem::Requirement
16
+ requirement: &2152095300 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2161836740
24
+ version_requirements: *2152095300
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: fog
27
- requirement: &2161836160 !ruby/object:Gem::Requirement
27
+ requirement: &2152080660 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2161836160
35
+ version_requirements: *2152080660
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: vagrant
38
- requirement: &2161835440 !ruby/object:Gem::Requirement
38
+ requirement: &2152075500 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *2161835440
46
+ version_requirements: *2152075500
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: configuration
49
- requirement: &2161833720 !ruby/object:Gem::Requirement
49
+ requirement: &2152073540 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *2161833720
57
+ version_requirements: *2152073540
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rspec
60
- requirement: &2161825780 !ruby/object:Gem::Requirement
60
+ requirement: &2152070280 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *2161825780
68
+ version_requirements: *2152070280
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake
71
- requirement: &2161825360 !ruby/object:Gem::Requirement
71
+ requirement: &2152068920 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *2161825360
79
+ version_requirements: *2152068920
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: pry
82
- requirement: &2161824900 !ruby/object:Gem::Requirement
82
+ requirement: &2152067800 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *2161824900
90
+ version_requirements: *2152067800
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: cucumber
93
- requirement: &2161824300 !ruby/object:Gem::Requirement
93
+ requirement: &2152067020 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *2161824300
101
+ version_requirements: *2152067020
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: guard-rspec
104
- requirement: &2161823680 !ruby/object:Gem::Requirement
104
+ requirement: &2152065600 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: '0'
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *2161823680
112
+ version_requirements: *2152065600
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: guard-cucumber
115
- requirement: &2161822940 !ruby/object:Gem::Requirement
115
+ requirement: &2152063900 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ! '>='
@@ -120,10 +120,10 @@ dependencies:
120
120
  version: '0'
121
121
  type: :development
122
122
  prerelease: false
123
- version_requirements: *2161822940
123
+ version_requirements: *2152063900
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: rb-fsevent
126
- requirement: &2161821960 !ruby/object:Gem::Requirement
126
+ requirement: &2152058320 !ruby/object:Gem::Requirement
127
127
  none: false
128
128
  requirements:
129
129
  - - ! '>='
@@ -131,10 +131,10 @@ dependencies:
131
131
  version: '0'
132
132
  type: :development
133
133
  prerelease: false
134
- version_requirements: *2161821960
134
+ version_requirements: *2152058320
135
135
  - !ruby/object:Gem::Dependency
136
136
  name: growl_notify
137
- requirement: &2161820660 !ruby/object:Gem::Requirement
137
+ requirement: &2152048940 !ruby/object:Gem::Requirement
138
138
  none: false
139
139
  requirements:
140
140
  - - ! '>='
@@ -142,7 +142,7 @@ dependencies:
142
142
  version: '0'
143
143
  type: :development
144
144
  prerelease: false
145
- version_requirements: *2161820660
145
+ version_requirements: *2152048940
146
146
  description: A simple and opinionated way to replicate a Vagrant setup on EC2 or Rackspace
147
147
  email:
148
148
  - cameron@theaboutbox.com
@@ -166,6 +166,7 @@ files:
166
166
  - lib/migrant/bootstrappers.rb
167
167
  - lib/migrant/bootstrappers/base.rb
168
168
  - lib/migrant/bootstrappers/ruby_local_192.rb
169
+ - lib/migrant/bootstrappers/ruby_local_193.rb
169
170
  - lib/migrant/boxes.rb
170
171
  - lib/migrant/cli.rb
171
172
  - lib/migrant/clouds.rb
@@ -209,7 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
209
210
  version: '0'
210
211
  requirements: []
211
212
  rubyforge_project: migrant-boxes
212
- rubygems_version: 1.8.10
213
+ rubygems_version: 1.8.15
213
214
  signing_key:
214
215
  specification_version: 3
215
216
  summary: Take your Vagrant to the Cloud