knife-rightscale 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
-
|