chef-metal 0.11.beta.11 → 0.11

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: 9d32d1fae6af87b342ba4a7897e2b3c539d1c132
4
- data.tar.gz: 09fb0e1c13e72ae6e60f254e7644b7c8648fbd6c
3
+ metadata.gz: 9a4b69b8572373668b6d29bf038e2da863f399a1
4
+ data.tar.gz: 16008add0cfc263409fd632ab6205c54dba6fa0b
5
5
  SHA512:
6
- metadata.gz: ffa6827939703da832cf2adcd0fb9e2ff65f8ec99bedd39fbbe1182a5f4fe382c88ac90bfeba64c88d498ff4751a2e0362143d9240731477d760f022a3302f1d
7
- data.tar.gz: 7277ce8aa1b986baf2affe252e65071726440ce0a9a9f2c72a58a8d5ba6e65aff564c1f6258b6ff3b1ff0bd57406d25e7563e598dfffb1a5c939cf4e50180613
6
+ metadata.gz: 756dd414e8309497b54c6c007060ddeb019cc0e48f2a32b95155dd131ff3a4026ee1eaaa2c89eb78091bffad32d9ea08cd445bee911e9582b86d2d218c8a2757
7
+ data.tar.gz: 289ed6a9752f6a8eed10c62128d6213899b910442945106cf11f2a362f25e419a48ed0f2e409da7e22fe381e81005f6e30e7f43dfc2596b74f603c5ca86fc80f
data/CHANGELOG.md CHANGED
@@ -1,24 +1,16 @@
1
1
  # Chef Metal Changelog
2
- ## 0.11.beta.10 (6/3/2014)
3
2
 
4
- - get rid of annoying SSL headers
5
- - fix crash when no current driver is set
6
-
7
- ## 0.11.beta.9 (6/3/2014)
3
+ ## 0.11 (6/3/2014)
8
4
 
5
+ - New Driver interface (see docs/ and blogs/ directories for documentation)
6
+ - New configuration (see docs/ and blogs/)
7
+ - get rid of annoying SSL warning (note: this turns off SSL verification, which was the default anyway)
9
8
  - fix machine_batch error report to be less verbose
10
-
11
- ## 0.11.beta.7 (5/30/2014)
12
-
13
- - allow options to be set from with_driver
14
9
  - fail when machine is being moved from driver to driver
15
- - support knife.rb config for non-canonical URLs
16
10
  - @marcusn disconnect from SSH when there is a problem
17
-
18
- ## 0.11.beta.6 (5/28/2014)
19
-
20
- - Fix machine_batch defaults to be significantly less stupid
21
- - Remove with_machine_batch
11
+ - fix SSH gateway code to honor any options given (@marcusn)
12
+ - Make machine_batch auto batching smarter (only batch things that have the same actions)
13
+ - Allow auto batching to be turned off with `auto_batch_machines = false` in recipes or config
22
14
  - Allow this:
23
15
  ```ruby
24
16
  machine_batch do
@@ -32,20 +24,8 @@
32
24
  machines 'a', 'b', 'c'
33
25
  action :destroy
34
26
  end
35
- - fix SSH gateway code to honor any options given (@marcusn)
36
-
37
- ## 0.11.beta.5 (5/28/2014)
38
-
39
27
  - fix issue setting Hosted Chef ACLs on nodes
40
- - fix single-machine converge crash
41
-
42
- ## 0.11.beta.2 (5/27/2014)
43
-
44
- - Bring in cheffish-0.5.beta.2
45
-
46
- ## 0.11.beta (5/23/2014)
47
-
48
- - New Driver interface (see docs/ and blogs/ directories for documentation)
28
+ - fix local mode forwarding in mixed IPv4/IPv6 environments
49
29
 
50
30
  ## 0.10.2 (5/2/2014)
51
31
 
data/README.md CHANGED
@@ -3,35 +3,54 @@ Chef Metal
3
3
 
4
4
  This library solves the problem of repeatably creating machines and infrastructures in Chef. It has a plugin model that lets you write bootstrappers for your favorite infrastructures, including VirtualBox, EC2, LXC, bare metal, and many more!
5
5
 
6
- Currently, chef-metal supports vagrant, Unixes/ssh, and Windows/winrm with real chef-servers or with automagical chef-zero tunneling. Fog and Docker support (to cover EC2 and LXC) are next up. Further out, we'd like to extend support to image factories (using the machine resource to produce images) and PXE support.
6
+ [This video](https://www.youtube.com/watch?v=Yb8QdL30WgM) explains the basics of chef-metal (though provisioners are now called drivers). Slides (more up to date) are [here](http://slides.com/jkeiser/chef-metal).
7
7
 
8
- A NOTE: the upcoming 0.11 has multiple changes and this document is not yet up to date with respect to them. For guides to writing drivers, embedding drivers and configuring Chef Metal, start here:
9
-
10
- [Chef Metal, Configuration and Drivers](https://github.com/opscode/chef-metal/blob/master/docs/blogs/2012-05-22-new-driver-interface.html.markdown#chef-metal-configuration-and-drivers)
8
+ Date | Blog
9
+ -----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------
10
+ 6/3/2014 | [machine_batch and parallelization](https://github.com/opscode/chef-metal/blob/master/docs/blogs/2012-05-28-machine_batch.html.markdown#chef-metal-parallelization)
11
+ 6/3/2014 | [Chef Metal, Configuration and Drivers](https://github.com/opscode/chef-metal/blob/master/docs/blogs/2012-05-22-new-driver-interface.html.markdown#chef-metal-configuration-and-drivers)
12
+ 3/4/2014 | [Chef Metal 0.2: Overview](http://www.getchef.com/blog/2014/03/04/chef-metal-0-2-release/) - this is a pretty good overview (though dated).
13
+ 12/20/2014 | [Chef Metal Alpha](http://www.getchef.com/blog/2013/12/20/chef-metal-alpha/)
11
14
 
12
15
  Try It Out
13
16
  ----------
14
17
 
15
- To give it a spin, get chef 11.8 or greater try this:
18
+ You can try out Metal in many different flavors.
19
+
20
+ ### Vagrant
16
21
 
17
- git clone https://github.com/opscode/cheffish.git
18
- cd cheffish
19
- rake install
20
- cd ..
22
+ To give it a spin, install Vagrant and VirtualBox and try this from the `chef-metal/docs/examples` directory:
21
23
 
22
- git clone https://github.com/opscode/chef-metal.git
23
- cd chef-metal
24
- rake install
25
-
26
- cd chef-metal
27
- chef-client -z -o myapp::vagrant,myapp::linux,myapp::small
24
+ ```
25
+ gem install chef-metal
26
+ export CHEF_DRIVER=vagrant
27
+ chef-client -z vagrant_linux.rb simple.rb
28
+ ```
28
29
 
29
30
  This will create two vagrant precise64 linux boxes, "mario" and "luigi1", in `~/machinetest`, bootstrapped to an empty runlist. For Windows, you can replace `myapp::linux` with `myapp::windows`, but you'll need your own Windows vagrant box to do that (licensing!).
30
31
 
32
+ ### AWS
33
+
34
+ If you have an AWS account, you can spin up a machine there like this:
35
+
36
+ ```
37
+ gem install chef-metal
38
+ export CHEF_DRIVER=fog:AWS
39
+ chef-client -z simple.rb
40
+ ```
41
+
42
+ This will create two linux boxes in the AWS account referenced by your default profile in `~/.aws/config` (or your environment variables).
43
+
44
+ When you are done with the examples, run this to clean up:
45
+
46
+ ```
47
+ chef-client -z destroy_all.rb
48
+ ```
49
+
31
50
  What Is Chef Metal?
32
51
  -------------------
33
52
 
34
- Chef Metal has two major abstractions: the machine resource, and provisioners.
53
+ Chef Metal has two major abstractions: the machine resource, anf drivers.
35
54
 
36
55
  ### The `machine` resource
37
56
 
@@ -58,148 +77,143 @@ end
58
77
 
59
78
  You will notice the dynamic nature of the number of web servers. It's all code, your imagination is the limit :)
60
79
 
61
- Kitchen
62
- -------
63
-
64
- Chef Metal also works with Test Kitchen, allowing you to test entire clusters, not just machines! The repository for the kitchen-metal gem is https://github.com/doubt72/kitchen-metal.
65
-
66
- Provisioners
67
- ------------
80
+ ### Drivers
68
81
 
69
- Provisioners handle the real work of getting those abstract definitions into real, physical form. They handle the following tasks, idempotently (you can run the resource again and again and it will only create the machine once--though it may notice things are wrong and fix them!):
82
+ Drivers handle the real work of getting those abstract definitions into real, physical form. They handle the following tasks, idempotently (you can run the resource again and again and it will only create the machine once--though it may notice things are wrong and fix them!):
70
83
 
71
84
  * Acquiring machines from the cloud, creating containers or VMs, or grabbing bare metal
72
85
  * Connecting to those machines via ssh, winrm, or other transports
73
86
  * Bootstrapping chef onto the machines and converging the recipes you suggested
74
87
 
75
- The provisioner API is separated out so that new provisioners can be made with minimal effort (without having to rewrite ssh, tunneling, bootstrapping, and OS support). But to the user, they appear as a single thing, so that the machine acquisition can use its smarts to autodetect the other bits (transports, OS's, etc.).
88
+ The driver API is separated out so that new drivers can be made with minimal effort (without having to rewrite ssh, tunneling, bootstrapping, and OS support). But to the user, they appear as a single thing, so that the machine acquisition can use its smarts to autodetect the other bits (transports, OS's, etc.).
76
89
 
77
- Provisioners save their data in the Chef node itself, so that they will be accessible to everyone who is using the Chef server to manage the nodes.
90
+ Drivers save their data in the Chef node itself, so that they will be accessible to everyone who is using the Chef server to manage the nodes.
78
91
 
79
- Provisioners each have their own repository. Current provisioners:
92
+ Drivers each have their own repository. Current drivers:
80
93
 
81
94
  **Cloud:**
82
95
  - [FOG: EC2, DigitalOcean, OpenStack, etc.](https://github.com/opscode/chef-metal-fog)
83
96
 
84
97
  **Virtualization:**
85
98
  - [Vagrant: VirtualBox, VMWare Fusion, etc.](https://github.com/opscode/chef-metal-vagrant)
99
+ - [VSphere](https://github.com/RallySoftware-cookbooks/chef-metal-vsphere) (not yet up to date with 0.11)
86
100
 
87
101
  **Containers:**
88
- - [LXC](https://github.com/opscode/chef-metal-lxc)
89
- - [Docker](https://github.com/opscode/chef-metal-docker)
102
+ - [LXC](https://github.com/opscode/chef-metal-lxc) (not yet up to date with 0.11)
103
+ - [Docker](https://github.com/opscode/chef-metal-docker) (not yet up to date with 0.11)
90
104
 
91
105
  **Bare Metal:**
92
- - [SSH (no PXE)](https://github.com/double-z/chef-metal-ssh)
106
+ - [SSH (no PXE)](https://github.com/double-z/chef-metal-ssh) (not yet up to date with 0.11)
93
107
 
94
- ### Vagrant
95
-
96
- chef-zero comes with a provisioner for Vagrant, an abstraction that covers VirtualBox, VMWare and other Virtual Machine drivers. To run it, you can check out the sample recipes with:
97
-
98
- ```
99
- chef-client -z -o myapp::vagrant,myapp::linux,myapp::small
100
- ```
108
+ ### Anatomy of a Recipe
101
109
 
102
- The provisioner specification is in myapp::vagrant and myapp::linux [sample recipes](https://github.com/opscode/chef-metal/tree/master/cookbooks/myapp/recipes), copy/pasted here for your convenience:
110
+ chef-zero comes with a provisioner for Vagrant, an abstraction that covers VirtualBox, VMWare and other Virtual Machine drivers. In docs/examples, you can run this to try it:
103
111
 
104
112
  ```ruby
105
- vagrant_cluster "#{ENV['HOME']}/machinetest"
106
-
107
- directory "#{ENV['HOME']}/machinetest/repo"
108
- with_chef_local_server :chef_repo_path => "#{ENV['HOME']}/machinetest/repo"
109
-
110
- vagrant_box 'precise64' do
111
- url 'http://files.vagrantup.com/precise32.box'
112
- end
113
+ export CHEF_DRIVER=vagrant
114
+ chef-client -z vagrant_linux.rb simple.rb
113
115
  ```
114
116
 
115
- `vagrant_cluster` declares a directory where all the vagrant definitions will be stored, and uses `with_provisioner` internally to tell Chef Metal that this is the provisioner we want to use for machines.
117
+ This is a chef-client run, which runs multiple **recipes.** Chef Metal is nothing but resources you put in recipes.
116
118
 
117
- `vagrant_box` makes sure a particular vagrant box exists, and lets you specify `provisioner_options` for things like port forwarding, OS definitions, and any other vagrant-isms. A more complicated vagrant box, with provisioner options, can be found in [myapp::windows](https://github.com/opscode/chef-metal/blob/master/cookbooks/myapp/recipes/windows.rb).
119
+ The driver is specified on the command line. Drivers are URLs. You could use `vagrant:~/vms` or `fog:AWS:default:us-east-1' as driver URLs. More information [here.](https://github.com/opscode/chef-metal/blob/master/docs/configuration.md#setting-the-driver-with-a-driver-url)
118
120
 
119
- `with_chef_local_server` is a generic directive that creates a chef-zero server pointed at the given repository. nodes, clients, data bags, and all data will be stored here on your provisioner machine if you do this. You can use `with_chef_server` instead if you want to point at OSS, Hosted or Enterprise Chef, and if you don't specify a Chef server at all, it will use the one you are running chef-client against. Keep in mind when using `with_chef_server` and running `chef-client -z` on your workstation that you will also need to set the client name and signing key for the chef server. If you've already got knife.rb set up, then something like this will correctly create a client for the chef server on instance using your knife.rb configuration:
121
+ The `vagrant_linux.rb` recipe handles the physical specification of the machines and Vagrant box:
120
122
 
121
123
  ```ruby
122
- require 'chef/config'
124
+ require 'chef_metal_vagrant'
123
125
 
124
- with_chef_server "https://chef-server.example.org", {
125
- :client_name => Chef::Config[:node_name],
126
- :signing_key_filename => Chef::Config[:client_key]
126
+ vagrant_box 'precise64' do
127
+ url 'http://files.vagrantup.com/precise64.box'
128
+ end
129
+
130
+ with_machine_options :vagrant_options => {
131
+ 'vm.box' => 'precise64'
127
132
  }
128
133
  ```
129
134
 
130
- Typically, you declare these in separate files from your machine resources. Chef Metal picks up the provisioners you have declared, and uses them to instantiate the machines you request. The actual machine definitions, in this case, are in `myapp::small`, and are generic--you could use them against EC2 as well:
135
+ `require 'chef_metal_vagrant'` is how we bring in the `vagrant_box` resource.
131
136
 
132
- ```ruby
133
- machine 'mario' do
134
- recipe 'postgresql'
135
- recipe 'mydb'
136
- tag 'mydb_master'
137
- end
137
+ `vagrant_box` makes sure a particular vagrant box exists, and lets you specify `machine_options` for things like port forwarding, OS definitions, and any other vagrant-isms.
138
138
 
139
- num_webservers = 1
139
+ Typically, you declare these in separate files from your machine resources. Chef Metal picks up the drivers and machine_options you have declared, and uses them to instantiate the machines you request. The actual machine definitions, in this case, are in `simple.rb`, and are generic--you could use them against Azure or EC2 as well:
140
140
 
141
- 1.upto(num_webservers) do |i|
142
- machine "luigi#{i}" do
143
- recipe 'apache'
144
- recipe 'mywebapp'
145
- end
141
+ ```ruby
142
+ machine 'mario' do
143
+ tag 'itsame'
146
144
  end
147
145
  ```
148
146
 
149
- ### Fog (EC2 and friends)
147
+ Other directives, like `recipe 'apache'`, help you set run lists and other information about the machine.
150
148
 
151
- chef-metal also comes with a [Fog](http://fog.io/) provisioner that handles provisioning to Amazon's EC2 and other cloud drivers. (Only EC2 has been tested so far.) Before you begin, you will need to put your AWS credentials in ~/.aws/config in the format [mentioned in Option 1 here](http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html#d0e726).
149
+ ### Fog (EC2, Openstack and friends)
150
+
151
+ chef-metal also comes with a [Fog](http://fog.io/) provisioner that handles provisioning to Openstack, Rackspace, Amazon's EC2 and other cloud drivers. Before you begin, you will need to put your AWS credentials in ~/.aws/config in the format [mentioned in Option 1 here](http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html#d0e726). There are other ways to specify your credentials, but this is the standard one for the Amazon CLI.
152
152
 
153
153
  Once your credentials are in, basic usage looks like this:
154
154
 
155
155
  ```
156
- chef-client -z -o myapp::ec2,myapp::small
156
+ export CHEF_DRIVER=fog:AWS
157
+ chef-client -z simple.rb
157
158
  ```
158
159
 
159
- The provisioner definition in `myapp::ec2` looks like this:
160
+ Other valid URLs include `fog:AWS:myprofilename` and `fog:AWS:profilename:us-west-2`.
160
161
 
161
- ```ruby
162
- ec2testdir = File.expand_path('~/ec2test')
162
+ Most Chef Metal drivers try hard to provide reasonable defaults so you can get started easily. Once you have specified your credentials, AMIs and other things are chosen for you.
163
163
 
164
- directory ec2testdir
164
+ You will usually want to create or input a custom key pair for bootstrap. To customize, specify keys and AMI and other options, you can make recipes like this:
165
165
 
166
- with_fog_ec2_provisioner # :driver => 'AWS'
166
+ ```ruby
167
+ require 'chef_metal_fog'
167
168
 
168
- with_provisioner_options :image_id => 'ami-5ee70037'
169
+ fog_key_pair 'my_bootstrap_key'
169
170
 
170
- fog_key_pair 'me' do
171
- private_key_path "#{ec2testdir}/me"
172
- public_key_path "#{ec2testdir}/me.pub"
173
- end
171
+ with_machine_options :bootstrap_options => {
172
+ :key_name => 'my_bootstrap_key',
173
+ :image_id => 'ami-59a4a230',
174
+ :flavor_id => 't1.micro'
175
+ }
174
176
  ```
175
177
 
176
- `with_fog_ec2_provisioner` tells chef-metal to use the Fog provisioner against EC2. If you specify your credentials in `~/.aws/config`, you don't *have* to specify anything else; it will use the Fog defaults. You may pass a hash of parameters to `with_fog_ec2_provisioner` that is described [here](https://github.com/opscode/chef-metal/blob/master/lib/chef_metal/provisioner/fog_provisioner.rb#L21-L32).
178
+ `fog_key_pair` creates a new key pair (if the files do not already exist) and uploads it to AWS (it will toss an error if the key pair already exists and does not match). By default, `fog_key_pair` will look for matching key files in .chef/keys, ~/.chef/keys and ~/.ssh. If it does not find one, it will place the key in `.chef/keys`. You can override this path in fog_key_pair, but if you do, you will want to modify `private_key_paths` in your configuration to match.
179
+
180
+ `with_machine_options` specifies machine_options that will be applied to any `machine` resources chef-client encounters.
177
181
 
178
- `fog_key_pair` creates a new key pair (if the files do not already exist) and automatically tells the Provisioner to use it to bootstrap subsequent machines. The private/public key pair will be automatically authorized to log on to the instance on first boot.
182
+ You will notice that we are still using `simple.rb` here. Machine definitions are generally driver-independent. This is an important feature that allows you to spin up your clusters in different places to create staging, test or miniature dev environments.
179
183
 
180
- To pass options like ami, you can say something like this:
184
+ ### Pointing Boxes at Servers
185
+
186
+ By default, Chef Metal will put your boxes on the same Chef server you started chef-client with (in the case of -z, that's a local chef-zero server). Sometimes you want to put your boxes on different servers. There are a couple of ways to do that:
181
187
 
182
188
  ```ruby
183
- with_provisioner_options :image_id => 'ami-5ee70037'
189
+ with_chef_local_server :chef_repo_path => '~/repo'
184
190
  ```
185
191
 
186
- If you need to pass bootstrapping options on a per-machine basis, you can do that as well by doing something like the following:
192
+ `with_chef_local_server` is a generic directive that creates a chef-zero server pointed at the given repository. nodes, clients, data bags, and all data will be stored here on your provisioner machine if you do this.
193
+
194
+ You can use `with_chef_server` instead if you want to point at OSS, Hosted or Enterprise Chef, and if you don't specify a Chef server at all, it will use the one you are running chef-client against. Keep in mind when using `with_chef_server` and running `chef-client -z` on your workstation that you will also need to set the client name and signing key for the chef server. If you've already got knife.rb set up, then something like this will correctly create a client for the chef server on instance using your knife.rb configuration:
187
195
 
188
196
  ```ruby
189
- machine "Ubuntu_64bit" do
190
- action :create
191
- provisioner_options 'bootstrap_options' => {
192
- 'image_id' => 'ami-59a4a230',
193
- 'flavor_id' => 't1.micro'
194
- }
195
- end
197
+ with_chef_server "https://chef-server.example.org",
198
+ :client_name => Chef::Config[:node_name],
199
+ :signing_key_filename => Chef::Config[:client_key]
196
200
  ```
197
201
 
198
- You will notice that we are still using `myapp::small` here. Machine definitions are generally provisioner-independent. This is an important feature that allows you to spin up your clusters in different places to create staging, test or miniature dev environments.
202
+ Kitchen
203
+ -------
204
+
205
+ Chef Metal also works with Test Kitchen, allowing you to test entire clusters, not just machines! The repository for the kitchen-metal gem is https://github.com/doubt72/kitchen-metal.
206
+
207
+ Documentation
208
+ -------------
209
+ * [Configuration](https://github.com/opscode/chef-metal/blob/master/docs/configuration.md#configuring-and-using-metal-drivers)
210
+ * [Writing Drivers](https://github.com/opscode/chef-metal/blob/master/docs/building_drivers.md#writing-drivers)
211
+ * [Embedding](https://github.com/opscode/chef-metal/blob/master/docs/embedding.md)
199
212
 
200
213
  Bugs and The Plan
201
214
  -----------------
202
215
 
203
- It's early days. *Please* submit bugs at https://github.com/opscode/chef-metal/issues, contact jkeiser on Twitter at @jkeiser2, email at jkeiser@opscode.com
216
+ Please submit bugs, gripes and feature requests at [https://github.com/opscode/chef-metal/issues](https://twitter.com/jkeiser2), contact jkeiser on Twitter at @jkeiser2, email at [jkeiser@getchef.com](mailto:jkeiser@getchef.com)
204
217
 
205
- If you are interested in the Plan for Chef Metal, you can peruse our [Trello board](https://trello.com/b/GcSzW0GM/chef-metal)! Please add suggestions there, vote or comment on issues that are important to you, and feel free to contribute by picking up a card. Chat with me (jkeiser@opscode.com) if you would like some context on how to go about implementing a card, or just go hog wild and submit a PR :)
218
+ To contribute, just make a PR in the appropriate repo--also, make sure you've [signed the Chef Contributor License Agreement](https://secure.echosign.com/public/hostedForm?formid=PJIF5694K6L) (quick couple of minutes online), since this is going into core Chef eventually. It takes some time to process, so if you've just done it, let me know in the PR :) If you already signed this for a Chef contribution, you don't need to do so again--if you're not sure, you can check for your name [here](https://wiki.opscode.com/display/chef/Approved+Contributors)!
219
+ Â
@@ -110,10 +110,9 @@ module ChefMetal
110
110
  uri = URI(local_url)
111
111
  host = Socket.getaddrinfo(uri.host, uri.scheme, nil, :STREAM)[0][3]
112
112
  if host == '127.0.0.1' || host == '[::1]'
113
- unless session.forward.active_remotes.any? { |port, bind| port == uri.port && bind == '127.0.0.1' }
114
- # TODO IPv6
115
- Chef::Log.debug("Forwarding local server 127.0.0.1:#{uri.port} to port #{uri.port} on #{username}@#{host}")
116
- session.forward.remote(uri.port, '127.0.0.1', uri.port)
113
+ unless session.forward.active_remotes.any? { |port, bind| port == uri.port && bind == uri.host }
114
+ Chef::Log.debug("Forwarding local server #{uri.host}:#{uri.port} to port #{uri.port} on #{username}@#{self.host}")
115
+ session.forward.remote(uri.port, uri.host, uri.port)
117
116
  end
118
117
  end
119
118
  local_url
@@ -1,3 +1,3 @@
1
1
  module ChefMetal
2
- VERSION = '0.11.beta.11'
2
+ VERSION = '0.11'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-metal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.beta.11
4
+ version: '0.11'
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Keiser
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-03 00:00:00.000000000 Z
11
+ date: 2014-06-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef
@@ -84,44 +84,44 @@ dependencies:
84
84
  name: cheffish
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '='
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.5.beta.4
89
+ version: '0.5'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '='
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.5.beta.4
96
+ version: '0.5'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: chef-metal-fog
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - '='
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 0.5.beta.6
103
+ version: '0.5'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - '='
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 0.5.beta.6
110
+ version: '0.5'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: chef-metal-vagrant
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - '='
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 0.4.beta.2
117
+ version: '0.4'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '='
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 0.4.beta.2
124
+ version: '0.4'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rspec
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -211,9 +211,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
211
211
  version: '0'
212
212
  required_rubygems_version: !ruby/object:Gem::Requirement
213
213
  requirements:
214
- - - ">"
214
+ - - ">="
215
215
  - !ruby/object:Gem::Version
216
- version: 1.3.1
216
+ version: '0'
217
217
  requirements: []
218
218
  rubyforge_project:
219
219
  rubygems_version: 2.2.2