knife-rightscale 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/CHANGELOG +4 -0
- data/CONTRIBUTORS +2 -0
- data/README.md +7 -4
- data/knife-rightscale.gemspec +2 -0
- data/lib/knife-rightscale/version.rb +1 -1
- metadata +19 -4
- data/lib/right_api_provision.rb +0 -92
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZDYyOGVjYjEyNmY5ODBkOGM1NzM1OThkMTc0ZTNjN2YyZGM5YmVhZg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
Mzg3YTRiODM5Y2EzNWFhZmVlMGYzMDdjMzcxMmY5MDkxODk2ZGE2Yg==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
OTFiOTcwOWFiNGFmNTY5OTJjNjBhNjY3NjE2NDk5NWMzNDE0YjFhMmQ3ZTUz
|
10
|
+
ODZhZGQ0MjJkZmEwZTlkZWNlYWFlNzgyZWQxNGFiYTgyYmU5YzQzNjMwZTkw
|
11
|
+
NTdlYTEwZjFjZGFlZmEzZjY4OTc0NWU0OTZlYzUzMzE1YWM2Zjk=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YzkzMGYxZjFlMWFhMDA3ZjM1Nzg1ZmZlMWRhYThhZjFmZjM4MDU0ZGIzZDgz
|
14
|
+
OWM4MzI4NTNmMjEzNDYxMjA0ODE5NWM2ZGM4ZjQ2YzEwYmI3NzAyMjNiMTE1
|
15
|
+
ZjFjZWNmMmQ1NGE4ZWFkNzQxOWZmNzg3Y2U2MDQ0N2JlMjY2NmE=
|
data/CHANGELOG
ADDED
data/CONTRIBUTORS
ADDED
data/README.md
CHANGED
@@ -12,9 +12,12 @@ NOTE: this plugin is currently under development and subject to change
|
|
12
12
|
You will need a RightScale account with at least one cloud registered. You can
|
13
13
|
sign up for a free trial account [here](https://www.rightscale.com).
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
15
|
+
I was lazy and only added support for the RightScale API 1.5 (since API 1.0 is
|
16
|
+
EC2 only and deprecated). As such, this plugin cannot currently provision
|
17
|
+
servers on EC2. If you need this capability and would like to part in a private
|
18
|
+
beta to enable that functionality, please contact support@rightscale.com and
|
19
|
+
they will hook you up. If you have any problems, please send me an email
|
20
|
+
directly.
|
18
21
|
|
19
22
|
You will also need a running Chef Server. If you don't already have one you can
|
20
23
|
sign up for a free trial of Hosted Chef from Opscode [here](http://www.opscode.com/hosted-chef/).
|
@@ -155,7 +158,7 @@ to filter by partial name match use the ```--name``` option
|
|
155
158
|
* create action
|
156
159
|
* ability to select image other than the default image on ServerTemplate
|
157
160
|
* ability to select instance type other than default (needed for cloudstack)
|
158
|
-
* add support for instance type (list and for server create)
|
161
|
+
* add support for instance type aka "flavor" (list and for server create)
|
159
162
|
* add support for datacents/zone type (list and for server create)
|
160
163
|
** Private beta
|
161
164
|
* display audit entry when server strands
|
data/knife-rightscale.gemspec
CHANGED
@@ -33,5 +33,7 @@ Gem::Specification.new do |gem|
|
|
33
33
|
gem.files = `git ls-files`.split($/)
|
34
34
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
35
35
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
36
|
+
gem.add_dependency "right_api_client", "~> 1.5"
|
37
|
+
|
36
38
|
gem.require_paths = ["lib"]
|
37
39
|
end
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: knife-rightscale
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cary Penniman
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
12
|
-
dependencies:
|
11
|
+
date: 2013-05-02 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: right_api_client
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.5'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.5'
|
13
27
|
description: One plugin to provision them all! This plugin allows the Chef developer
|
14
28
|
to provision Chef clients on all major clouds using the RightScale platform.
|
15
29
|
email:
|
@@ -20,6 +34,8 @@ extra_rdoc_files: []
|
|
20
34
|
files:
|
21
35
|
- .gitignore
|
22
36
|
- .rspec
|
37
|
+
- CHANGELOG
|
38
|
+
- CONTRIBUTORS
|
23
39
|
- Gemfile
|
24
40
|
- LICENSE.txt
|
25
41
|
- README.md
|
@@ -36,7 +52,6 @@ files:
|
|
36
52
|
- lib/chef/knife/rightscale_servertemplate_list.rb
|
37
53
|
- lib/knife-rightscale.rb
|
38
54
|
- lib/knife-rightscale/version.rb
|
39
|
-
- lib/right_api_provision.rb
|
40
55
|
- lib/right_api_provision/api15.rb
|
41
56
|
- lib/right_api_provision/exception.rb
|
42
57
|
- lib/right_api_provision/provisioner.rb
|
data/lib/right_api_provision.rb
DELETED
@@ -1,92 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# Author:: Cary Penniman (<cary@rightscale.com>)
|
3
|
-
# Copyright:: Copyright (c) 2013 RightScale, Inc.
|
4
|
-
# License:: Apache License, Version 2.0
|
5
|
-
#
|
6
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
-
# you may not use this file except in compliance with the License.
|
8
|
-
# You may obtain a copy of the License at
|
9
|
-
#
|
10
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
-
#
|
12
|
-
# Unless required by applicable law or agreed to in writing, software
|
13
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
-
# See the License for the specific language governing permissions and
|
16
|
-
# limitations under the License.
|
17
|
-
#
|
18
|
-
|
19
|
-
# returns dto object
|
20
|
-
list_clouds(name) => id, name, description
|
21
|
-
list_deployemnt(name) => id, name, description
|
22
|
-
list_mci(st_id, name) => id, name
|
23
|
-
list_mci_cs(mci_id) => id, name, default_instance_type # can we filter by cloud id?
|
24
|
-
list_secgroups(cloud_id, name) => id, name, resource_uid
|
25
|
-
|
26
|
-
# returns object_id
|
27
|
-
find_cloud(name) => id
|
28
|
-
find_st(name) => id
|
29
|
-
|
30
|
-
|
31
|
-
#
|
32
|
-
# Provisioner Object
|
33
|
-
#
|
34
|
-
|
35
|
-
# Provision a server using RightScale
|
36
|
-
#
|
37
|
-
# @param name [String] the name to give the server that will be created.
|
38
|
-
# @param servertemplate [String] the name or ID of the ServerTemplate to create the server from.
|
39
|
-
# @param cloud [String] name of cloud to provision on.
|
40
|
-
# @param deployment [String] name of deployment to add server to.
|
41
|
-
# This will be created if it does not exist.
|
42
|
-
# @param
|
43
|
-
# @param delay[Integer] seconds to sleep between polling attempts
|
44
|
-
# @param pending_block[Block] block to execute before each attempt.
|
45
|
-
#
|
46
|
-
# @returns [Object] a provisioner object for the created server
|
47
|
-
#
|
48
|
-
# @raises RightApiProvisionException if anything goes wrong
|
49
|
-
provision(
|
50
|
-
name,
|
51
|
-
st_name,
|
52
|
-
cloud_name,
|
53
|
-
deploy_name,
|
54
|
-
inputs,
|
55
|
-
ssh_key_uid,
|
56
|
-
secgroup_id,
|
57
|
-
&pending_block)
|
58
|
-
|
59
|
-
# Check to see if the server is ready
|
60
|
-
#
|
61
|
-
# @returns true[TrueFalse] if the server operational
|
62
|
-
server_operational?
|
63
|
-
|
64
|
-
# Wait for the server to be ready
|
65
|
-
#
|
66
|
-
# Blocks execution until the server state is operational
|
67
|
-
# Use pending_block param to provide custom progress UI output.
|
68
|
-
#
|
69
|
-
# @param delay[Integer] seconds to sleep between polling attempts
|
70
|
-
# @param pending_block[Block] block to execute before each attempt.
|
71
|
-
#
|
72
|
-
# @raises RightApiProvisionExceptionUNEXPECTED_STATE if invalid server
|
73
|
-
# state is received.
|
74
|
-
wait_for_operational(delay, &pending_block)
|
75
|
-
|
76
|
-
# Get server information
|
77
|
-
#
|
78
|
-
# Grabs the DNS and IP information from an operational server.
|
79
|
-
# This will poll until the information is available from the cloud.
|
80
|
-
# Use pending_block param to provide custom progress UI output.
|
81
|
-
#
|
82
|
-
# @param delay[Integer] seconds to sleep between polling attempts
|
83
|
-
# @param pending_block[Block] block to execute before each attempt.
|
84
|
-
#
|
85
|
-
# @returns
|
86
|
-
server_info(delay, &pending_block)
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|