vagrant-rackspace 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7fe21c6407d830b5385525127b4a603868d1633e
4
- data.tar.gz: 844c3ce48da303288e07f98908f139d15883c98b
3
+ metadata.gz: 7324f904ffa180128b4c16db1c61a2ca9aa86ba8
4
+ data.tar.gz: 83d9122d95c830e14093e988fbc72329aa14e6a2
5
5
  SHA512:
6
- metadata.gz: 01154897155ab913685c7521b06dd44019e35cb0437ab267089e611ef36376dab5fccb94c96bcc61b5c498e1c3d990228f51913fdaed13f7bba8c738122db9c3
7
- data.tar.gz: 094f97a4d92ade0439411eb3d8e944f1401c2fee5925dc355066e9b71807cfda563e41df2b8ee10be058a126ffe453665d094019951260b03a12a29cc2f17620
6
+ metadata.gz: d6e0ffe9c336faa5cb93752b42a2d73aabc67ff8f728128eac860d0e1100090fc53a9c0219aa9f8ef1986103b1473155f96a9c8fb2fafb96aa5e18f3ca128999
7
+ data.tar.gz: 2420f4a7ff9decf897cecd34501ec39e713d84731f342ac464552ad5dd9888c5f14c7b8822ee6b3ea63f637b15def31fe72bf5e43dddcb056de68041d6f97bee
data/CHANGELOG.md CHANGED
@@ -1,3 +1,19 @@
1
+ # 0.1.8 (June 20, 2014)
2
+
3
+ FEATURES:
4
+
5
+
6
+
7
+ IMPROVEMENTS:
8
+
9
+ - Copy symlinks when syncing folders using older versions of vagrant [GH-89]
10
+ - Update vagrant to allow users to specify non-standard images and flavors [GH-101]
11
+
12
+ BUG FIXES:
13
+
14
+ - Fixed windows path issue when syncing folders older versions of vagrant [GH-96]
15
+
16
+
1
17
  # 0.1.7 (March 13, 2014)
2
18
 
3
19
  FEATURES:
data/Gemfile CHANGED
@@ -1,9 +1,12 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gemspec
3
+
4
+ group :plugins do
5
+ gemspec
6
+ gem 'vagrant', :git => 'https://github.com/mitchellh/vagrant'
7
+ end
4
8
 
5
9
  gem "appraisal", "1.0.0.beta2"
6
- gem "vagrant", :git => "git://github.com/mitchellh/vagrant.git", :tag => "v1.4.3"
7
10
 
8
11
  group :development do
9
12
  # We depend on Vagrant for development, but we don't add it as a
@@ -13,3 +16,4 @@ group :development do
13
16
  gem 'pry'
14
17
  end
15
18
 
19
+
data/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # Vagrant RackSpace Cloud Provider
1
+ # Vagrant Rackspace Cloud Provider
2
2
 
3
3
  This is a [Vagrant](http://www.vagrantup.com) 1.1+ plugin that adds a
4
- [RackSpace Cloud](http://www.rackspace.com/cloud) provider to Vagrant,
5
- allowing Vagrant to control and provision machines within RackSpace
4
+ [Rackspace Cloud](http://www.rackspace.com/cloud) provider to Vagrant,
5
+ allowing Vagrant to control and provision machines within Rackspace
6
6
  cloud.
7
7
 
8
8
  **Note:** This plugin requires Vagrant 1.1+.
@@ -35,7 +35,7 @@ box file for Vagrant.
35
35
  The default configuration of the RHEL family of Linux distributions requires a tty in order to run sudo. Vagrant does not connect with a tty by default, so you may experience the error:
36
36
  > sudo: sorry, you must have a tty to run sudo
37
37
 
38
- The best way to take deal with this error is to upgrade to Vagrant 1.4 or later, and enable:
38
+ The best way to deal with this error is to upgrade to Vagrant 1.4 or later, and enable:
39
39
  ```ruby
40
40
  config.ssh.pty = true
41
41
  ```
@@ -79,6 +79,18 @@ Note that normally a lot of this boilerplate is encoded within the box
79
79
  file, but the box file used for the quick start, the "dummy" box, has
80
80
  no preconfigured defaults.
81
81
 
82
+ ### Flavors / Images
83
+
84
+ To determine what flavors and images are avliable in your region refer to the [Custom Commands](#custom-commands) section.
85
+
86
+ ### RackConnect
87
+
88
+ If you are using RackConnect with vagrant, you will need to add the following line to the `config.vm.provider` section to prevent timeouts.
89
+
90
+ ```
91
+ rs.rackconnect = true
92
+ ```
93
+
82
94
  ## Custom Commands
83
95
 
84
96
  The plugin includes several Rackspace-specific vagrant commands. You can get the
@@ -154,29 +166,6 @@ Vagrant.configure("2") do |config|
154
166
  end
155
167
  ```
156
168
 
157
- ### Flavors
158
-
159
- As of February 2, 2014, the available flavor names are:
160
-
161
- * 512MB Standard Instance
162
- * 1GB Standard Instance
163
- * 2GB Standard Instance
164
- * 4GB Standard Instance
165
- * 8GB Standard Instance
166
- * 15GB Standard Instance
167
- * 30GB Standard Instance
168
- * 1 GB Performance
169
- * 2 GB Performance
170
- * 4 GB Performance
171
- * 8 GB Performance
172
- * 120 GB Performance
173
- * 15 GB Performance
174
- * 30 GB Performance
175
- * 60 GB Performance
176
- * 90 GB Performance
177
-
178
- Please note that the standard instances are deprecated in favor of our performance flavors.
179
-
180
169
  ## Networks
181
170
 
182
171
  Networking features in the form of `config.vm.network` are not
data/Vagrantfile CHANGED
@@ -14,6 +14,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
14
14
  config.vm.box = "dummy"
15
15
  config.vm.provider :rackspace do |rs|
16
16
  rs.username = ENV['RAX_USERNAME']
17
+ rs.admin_password = ENV['VAGRANT_ADMIN_PASSWORD']
17
18
  rs.api_key = ENV['RAX_API_KEY']
18
19
  rs.flavor = /1 GB Performance/
19
20
  rs.image = /Ubuntu/
@@ -36,7 +36,11 @@ module VagrantPlugins
36
36
  end
37
37
 
38
38
  b2.use Provision
39
- b2.use SyncFolders
39
+ if defined?(SyncedFolders)
40
+ b2.use SyncedFolders
41
+ else
42
+ b2.use SyncFolders
43
+ end
40
44
  end
41
45
  end
42
46
  end
@@ -102,7 +106,11 @@ module VagrantPlugins
102
106
 
103
107
  b2.use ConnectRackspace
104
108
  b2.use Provision
105
- b2.use SyncFolders
109
+ if defined?(SyncedFolders)
110
+ b2.use SyncedFolders
111
+ else
112
+ b2.use SyncFolders
113
+ end
106
114
  b2.use CreateServer
107
115
  end
108
116
  end
@@ -21,12 +21,12 @@ module VagrantPlugins
21
21
 
22
22
  # Find the flavor
23
23
  env[:ui].info(I18n.t("vagrant_rackspace.finding_flavor"))
24
- flavor = find_matching(env[:rackspace_compute].flavors.all, config.flavor)
24
+ flavor = find_matching(env[:rackspace_compute].flavors, config.flavor)
25
25
  raise Errors::NoMatchingFlavor if !flavor
26
26
 
27
27
  # Find the image
28
28
  env[:ui].info(I18n.t("vagrant_rackspace.finding_image"))
29
- image = find_matching(env[:rackspace_compute].images.all, config.image)
29
+ image = find_matching(env[:rackspace_compute].images, config.image)
30
30
  raise Errors::NoMatchingImage if !image
31
31
 
32
32
  # Figure out the name for the server
@@ -59,8 +59,12 @@ module VagrantPlugins
59
59
  :metadata => config.metadata
60
60
  }
61
61
 
62
+ if config.admin_password
63
+ options[:password] = config.admin_password
64
+ end
65
+
62
66
  if config.key_name
63
- options[:keypair] = config.key_name
67
+ options[:key_name] = config.key_name
64
68
  env[:ui].info(" -- Key Name: #{config.key_name}")
65
69
  else
66
70
  options[:personality] = [
@@ -141,13 +145,11 @@ module VagrantPlugins
141
145
  # `name`. Or, if `name` is a regexp, a partial match is chosen
142
146
  # as well.
143
147
  def find_matching(collection, name)
144
- collection.each do |single|
145
- return single if single.id == name
146
- return single if single.name == name
147
- return single if name.is_a?(Regexp) && name =~ single.name
148
+ if name.is_a?(Regexp)
149
+ collection.all.find {|item| name =~ item.name }
150
+ else
151
+ collection.get name
148
152
  end
149
-
150
- nil
151
153
  end
152
154
  end
153
155
  end
@@ -16,6 +16,7 @@ module VagrantPlugins
16
16
 
17
17
  def call(env)
18
18
  @app.call(env)
19
+ env[:ui].warn(I18n.t("vagrant_rackspace.sync_folders"))
19
20
 
20
21
  ssh_info = env[:machine].ssh_info
21
22
 
@@ -32,7 +33,7 @@ module VagrantPlugins
32
33
 
33
34
  # If on Windows, modify the path to work with cygwin rsync
34
35
  if @host_os =~ /mswin|mingw|cygwin/
35
- hostpath = hostpath.sub(/^([A-Za-z]):\//, "/cygdrive/#{$1.downcase}/")
36
+ hostpath = hostpath.sub(/^([A-Za-z]):\//) { "/cygdrive/#{$1.downcase}/" }
36
37
  end
37
38
 
38
39
  env[:ui].info(I18n.t("vagrant_rackspace.rsync_folder",
@@ -54,7 +55,7 @@ module VagrantPlugins
54
55
  # .hg/ to exclude list as that isn't covered in
55
56
  # --cvs-exclude
56
57
  command = [
57
- "rsync", "--verbose", "--archive", "-z",
58
+ "rsync", "--verbose", "--archive", "-z", "-L",
58
59
  "--cvs-exclude",
59
60
  "--exclude", ".hg/",
60
61
  *includes,
@@ -102,6 +102,13 @@ module VagrantPlugins
102
102
  # @return [Array]
103
103
  attr_accessor :rsync_includes
104
104
 
105
+ # Password to set for root (on Linux) or Administrator (on Windows)
106
+ # A random password will be generated if admin_password is not set or
107
+ # does not meet the password requirements of the operating system.
108
+ #
109
+ # @return [String]
110
+ attr_accessor :admin_password
111
+
105
112
  # Default Rackspace Cloud Network IDs
106
113
  SERVICE_NET_ID = '11111111-1111-1111-1111-111111111111'
107
114
  PUBLIC_NET_ID = '00000000-0000-0000-0000-000000000000'
@@ -1,5 +1,5 @@
1
1
  module VagrantPlugins
2
2
  module Rackspace
3
- VERSION = "0.1.7"
3
+ VERSION = "0.1.8"
4
4
  end
5
5
  end
data/locales/en.yml CHANGED
@@ -36,6 +36,9 @@ en:
36
36
  Warning! The Rackspace provider doesn't support any of the Vagrant
37
37
  high-level network configurations (`config.vm.network`). They
38
38
  will be silently ignored.
39
+ sync_folders: |-
40
+ Rackspace support for Vagrant 1.3 has been deprecated. Please
41
+ upgrade to the latest version of vagrant for continued support.
39
42
 
40
43
  config:
41
44
  api_key_required: |-
@@ -24,6 +24,7 @@ describe VagrantPlugins::Rackspace::Config do
24
24
  its(:disk_config) { should be_nil }
25
25
  its(:networks) { should be_nil }
26
26
  its(:rsync_includes) { should be_nil }
27
+ its(:admin_password) { should be_nil }
27
28
  end
28
29
 
29
30
  describe "overriding defaults" do
@@ -37,7 +38,8 @@ describe VagrantPlugins::Rackspace::Config do
37
38
  :rackconnect,
38
39
  :server_name,
39
40
  :disk_config,
40
- :username].each do |attribute|
41
+ :username,
42
+ :admin_password].each do |attribute|
41
43
  it "should not default #{attribute} if overridden" do
42
44
  subject.send("#{attribute}=".to_sym, "foo")
43
45
  subject.finalize!
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-rackspace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mitchell Hashimoto
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-13 00:00:00.000000000 Z
11
+ date: 2014-06-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fog
@@ -145,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
145
145
  version: '0'
146
146
  requirements: []
147
147
  rubyforge_project:
148
- rubygems_version: 2.2.0
148
+ rubygems_version: 2.2.2
149
149
  signing_key:
150
150
  specification_version: 4
151
151
  summary: Enables Vagrant to manage machines in RackSpace Cloud.