rs-api-tools 0.0.8 → 0.0.9

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: 4717736cb349e30580a7156c8ffd3bc0b0cb0da2
4
- data.tar.gz: 8d930782fc7a17806f99c54bbe16e195d17cf63f
3
+ metadata.gz: 45f18cd658df100eb7bef0207adc398ffeb1945a
4
+ data.tar.gz: cb60a3ea224758f7b1f17c683d2acd7af8aa0168
5
5
  SHA512:
6
- metadata.gz: 61a8111ad10749625f245becf6afd99d2ebe77c1291d70fca8cdde45f242a26780912df5cec7a995f3fe060e9c29ac6c04a3b87ab4a89526f0ad57c3050b305c
7
- data.tar.gz: a86803c4776080fdfa1344bd13357735a6d705256612dd00c49c1f806f4133ed9514e73c57b6ed1300a6c40c4060b41103963af95f713d7e027c9f232b9b820e
6
+ metadata.gz: b17711f8022e581bbd8737529b44ff6fdebe31d19315acc0fb4ddae66d5d99009c1d72ba091e2705f4c58f155c1043c2a7ed1f3ade9fb13e50e23319dfa0b920
7
+ data.tar.gz: 5520e871ad1f9478e8f47f78c5a0b78eff6eb3a15c2365be3b21b0a04aac39daf129871c8bbee005068c6c20b224367c2cb7489fb09e2df726c7c955c0beb19b
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/ruby
2
2
 
3
3
  def usage
4
- puts "usage: rs-create-servertemplate [--name <server_template_name>] --name <server_template_description>] [[--help]]"
4
+ puts "usage: rs-create-servertemplate [--name <server_template_name>] [--description <server_template_description>] [--metadata <rightscale_metadata>] [[--help]]"
5
5
  puts ''
6
6
  puts "See rs-create-servertemplate --help for more information on usage."
7
7
  end
@@ -28,6 +28,9 @@ server_template['name'] = false
28
28
  server_template['description'] = ''
29
29
 
30
30
  metadata = false
31
+ import = true
32
+ create_repo = true
33
+ interactive = true
31
34
  verbose = false
32
35
  dry = false
33
36
  debug = false
@@ -36,10 +39,13 @@ help = false
36
39
  opts = GetoptLong.new(
37
40
  [ '--name', '-n', GetoptLong::REQUIRED_ARGUMENT ],
38
41
  [ '--description', '-d', GetoptLong::OPTIONAL_ARGUMENT ],
39
- [ '--metadata', '-m', GetoptLong::OPTIONAL_ARGUMENT],
40
- [ '--verbose', '-v', GetoptLong::OPTIONAL_ARGUMENT ],
41
- [ '--debug', '-D', GetoptLong::OPTIONAL_ARGUMENT ],
42
- [ '--dry', GetoptLong::OPTIONAL_ARGUMENT ],
42
+ [ '--metadata', '-m', GetoptLong::OPTIONAL_ARGUMENT ],
43
+ [ '--no-import', GetoptLong::NO_ARGUMENT ],
44
+ [ '--non-interactive', GetoptLong::NO_ARGUMENT ],
45
+ [ '--no-create-repo', GetoptLong::NO_ARGUMENT ],
46
+ [ '--verbose', '-v', GetoptLong::NO_ARGUMENT ],
47
+ [ '--debug', '-D', GetoptLong::NO_ARGUMENT ],
48
+ [ '--dry', GetoptLong::NO_ARGUMENT ],
43
49
  [ '--help', '-h', GetoptLong::NO_ARGUMENT ]
44
50
  )
45
51
 
@@ -51,6 +57,12 @@ opts.each do |opt, arg|
51
57
  server_template['description'] = arg
52
58
  when '--metadata'
53
59
  metadata = arg
60
+ when '--no-import'
61
+ import = false
62
+ when '--non-interactive'
63
+ interactive = false
64
+ when '--no-create-repo'
65
+ create_repo = false
54
66
  when '--help'
55
67
  help = true
56
68
  when '--verbose'
@@ -120,13 +132,19 @@ if metadata
120
132
  system("rs-tag-resource --href #{st.href} --tag '#{tag}'")
121
133
  }
122
134
 
123
- # import multi-cloud images (if needed), and
135
+ # import multi-cloud images (if needed TODO), and
124
136
  # add multi-cloud images to server_template
125
137
  server_template['multi_cloud_images'].each { |mci|
126
138
  make_default = ''
127
- puts "Import published MCI, #{mci['publication_id']} ? (y/n)"
128
- import_mci = yesno
129
- system("rs-import-publication --id #{mci['publication_id']}") if mci['publication_id'] if import_mci
139
+ if (import && mci['publication_id'])
140
+ if interactive
141
+ puts "Import published MCI, #{mci['publication_id']} ? (y/n)"
142
+ import_mci = yesno
143
+ else
144
+ import_mci = true
145
+ end
146
+ system("rs-import-publication --id #{mci['publication_id']}") if import_mci
147
+ end
130
148
  if mci['id']
131
149
  if mci['default']
132
150
  make_default = ' --default'
@@ -136,45 +154,84 @@ if metadata
136
154
  }
137
155
 
138
156
  # create cookbook repositories/import cookbooks
139
- puts 'Do you need to create the Chef repositories ? (y/n)'
140
- create_repos = yesno
141
- if create_repos
142
- if server_template['cookbooks'] == 'Cheffile'
157
+ if server_template['cookbooks'] == 'Cheffile'
158
+ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib', 'librarian_chef_dsl_parser'))
159
+ library = LibrarianChefDSLParser.new("#{Dir.pwd}/Cheffile")
160
+ create_repos = true
161
+ if interactive
162
+ puts 'Do you need to create the Chef cookbook repositories ? (y/n)'
163
+ create_repos = yesno
164
+ end
165
+ if (create_repos && create_repo)
143
166
  puts 'Setting up repositories from Cheffile.'
144
167
  system("rs-create-repositories --cheffile #{Dir.pwd}/Cheffile")
145
168
  end
146
- end
147
-
148
- require File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib', 'librarian_chef_dsl_parser'))
149
- library = LibrarianChefDSLParser.new("#{Dir.pwd}/Cheffile")
150
-
151
- cookbook_hrefs = Array.new
152
- library.cookbooks.each { |cookbook|
153
- filter = Array.new
154
- filter.push("name==#{cookbook['name']}")
155
- filter.push("namespace==primary")
156
- cookbooks = rightscale.cookbooks.index(:filter => filter).select{ |c|
157
- c.raw['source_info_summary'] == "#{cookbook['name']} #{cookbook['options'][:ref]}"
169
+ puts 'Determining cookbooks for ServerTemplate...'
170
+ cookbook_hrefs = Array.new
171
+ library.cookbooks.each { |cookbook|
172
+ filter = Array.new
173
+ filter.push("name==#{cookbook['name']}")
174
+ filter.push("namespace==primary")
175
+ puts "filter: #{filter}" if debug
176
+ cookbooks = rightscale.cookbooks.index(:filter => filter).select{ |c|
177
+ c.raw['source_info_summary'] == "#{cookbook['name']} #{cookbook['options'][:ref]}"
178
+ }
179
+ cookbook_hrefs.push(cookbooks.first.href)
158
180
  }
159
- puts cookbooks.first if debug
160
- cookbook_hrefs.push(cookbooks.first.href)
161
- }
162
- puts "cookbook hrefs: #{cookbook_hrefs}"
163
- # TODO: multi_attach
164
- cookbook_hrefs.each { |href|
165
- rightscale.server_templates(:id => st.href.split('/')[-1]).show.cookbook_attachments.create({ 'cookbook_attachment' => { 'cookbook_href' => "#{href}" }})
166
- }
181
+ puts "cookbook hrefs: #{cookbook_hrefs}" if (verbose || debug)
182
+ # TODO: multi_attach
183
+ puts 'Attaching cookbooks to ServerTemplate.'
184
+ cookbook_hrefs.each { |href|
185
+ rightscale.server_templates(:id => st.href.split('/')[-1]).show.cookbook_attachments.create({ 'cookbook_attachment' => { 'cookbook_href' => "#{href}" }})
186
+ }
187
+ end
167
188
 
168
189
  # bind executables
169
190
  if server_template['boot_scripts'] == 'node.json'
170
191
  require 'json'
171
192
  recipes = JSON.parse(IO.read("#{Dir.pwd}/node.json"))['run_list'].map {|s| s.gsub('recipe[', '').gsub(']', '')}
172
193
  recipes.each { |recipe|
173
- "Adding recipe, '#{recipe}' to boot scripts."
194
+ puts "Adding recipe, '#{recipe}' to boot scripts."
174
195
  system("rs-bind-executable --id #{st.href.split('/')[-1]} --recipe #{recipe}")
175
196
  }
176
197
  end
177
198
 
199
+ # configure inputs
200
+ if server_template['inputs'] == 'node.json'
201
+ puts 'Configuring inputs on ServerTemplate.'
202
+ require 'json'
203
+ node_attributes = JSON.parse(IO.read("#{Dir.pwd}/node.json")).reject{|k| k == 'run_list'}
204
+ inputs = Array.new
205
+ node_attributes.each { |cookbook, attrs|
206
+ node_attributes[cookbook].each { |key, val|
207
+ if val.kind_of?(String) || val.kind_of?(TrueClass) || val.kind_of?(FalseClass)
208
+ input = { "#{cookbook}/#{key}" => "text:#{val}" }
209
+ inputs.push(input)
210
+ elsif val.kind_of?(Array)
211
+ input = { "#{cookbook}/#{key}" => "array:#{val.join(',')}" }
212
+ inputs.push(input)
213
+ elsif val.kind_of?(Hash)
214
+ val.each { |sub_key, sub_val|
215
+ if sub_val.kind_of?(Array)
216
+ input = { "#{cookbook}/#{key}/#{sub_key}" => "array:#{sub_val.join(',')}" }
217
+ else
218
+ input = { "#{cookbook}/#{key}/#{sub_key}" => "text:#{sub_val}" }
219
+ end
220
+ inputs.push(input)
221
+ }
222
+ end
223
+ }
224
+ }
225
+ puts "inputs: #{inputs}" if debug
226
+ # bulk (needs testing)
227
+ #rightscale.server_templates(:id => st.href.split('/')[-1]).show.inputs.multi_update({ :inputs => inputs })
228
+ # individually
229
+ inputs.each { |i|
230
+ puts "Adding input, #{i.first[0]}=#{i.first[1]}." if verbose
231
+ system("rs-update-input --verbose --servertemplate --id #{st.href.split('/')[-1]} #{i.first[0].to_s} #{i.first[1].to_s}")
232
+ }
233
+ end
234
+
178
235
  # add alerts
179
236
  server_template['alerts'].each { |alert|
180
237
  system("rs-create-alert --resource ServerTemplate --id #{st.href.split('/')[-1]} --name '#{alert['name']}' --file '#{alert['file']}' --value '#{alert['value']}' --condition '#{alert['condition']}' --threshold '#{alert['threshold']}' --duration #{alert['duration']} --escalation '#{alert['escalation_name']}' --verbose")
data/bin/rs-update-input CHANGED
@@ -4,26 +4,24 @@
4
4
 
5
5
  require 'rubygems'
6
6
  require 'getoptlong'
7
- require 'json'
8
- require 'rest_connection'
9
7
 
10
8
  def usage
11
- puts("rs-set-input [[--current]] [--server --id <server_id> | --deployment --id <deployment_id>] <input_name> <input_value>")
12
- puts 'e.g. rs-set-input --server'
9
+ puts("rs-update-input [[--current]] [--server --id <server_id> | --deployment --id <deployment_id>] <input_name> <input_value>")
10
+
13
11
  exit
14
12
  end
15
13
 
16
14
  opts = GetoptLong.new(
17
- [ '--current', '-c', GetoptLong::OPTIONAL_ARGUMENT ],
18
- [ '--server', '-s', GetoptLong::OPTIONAL_ARGUMENT ],
19
- [ '--deployment', '-d', GetoptLong::OPTIONAL_ARGUMENT ],
20
- [ '--id', '-i', GetoptLong::OPTIONAL_ARGUMENT ],
21
- [ '--name', '-n', GetoptLong::REQUIRED_ARGUMENT ],
22
- [ '--value', '-V', GetoptLong::REQUIRED_ARGUMENT ],
23
- [ '--verbose', '-v', GetoptLong::OPTIONAL_ARGUMENT ]
15
+ [ '--current', '-c', GetoptLong::NO_ARGUMENT ],
16
+ [ '--server', '-s', GetoptLong::NO_ARGUMENT ],
17
+ [ '--deployment', '-d', GetoptLong::NO_ARGUMENT ],
18
+ [ '--servertemplate', '-t', GetoptLong::NO_ARGUMENT ],
19
+ [ '--id', '-i', GetoptLong::REQUIRED_ARGUMENT ],
20
+ [ '--verbose', '-v', GetoptLong::NO_ARGUMENT ]
24
21
  )
25
22
 
26
23
  server = false
24
+ servertemplate = false
27
25
  name = false
28
26
  current = false
29
27
  deployment = false
@@ -41,14 +39,18 @@ opts.each do |opt, arg|
41
39
  server = true
42
40
  when '--deployment'
43
41
  deployment = true
42
+ when '--servertemplate'
43
+ servertemplate = true
44
44
  when '--id'
45
45
  id = arg
46
46
  when '--name'
47
47
  name = arg
48
+ when '--verbose'
49
+ verbose = true
48
50
  end
49
51
  end
50
52
 
51
- usage if !(server || deployment)
53
+ usage if !(server || deployment || servertemplate)
52
54
  usage if !(id || name || ARGV[0] || ARGV[1])
53
55
 
54
56
  input_name = ARGV[0] if ARGV[0]
@@ -56,6 +58,7 @@ input_value = ARGV[1] if ARGV[1]
56
58
 
57
59
  # get server
58
60
  if server
61
+ require 'rest_connection'
59
62
  if name
60
63
  puts "Finding server: '%#{name}%'"
61
64
  server = Server.find(:first) { |s| s.nickname =~ /#{name}/ }
@@ -64,8 +67,18 @@ if server
64
67
  elsif id
65
68
  server = Server.find(server_id.to_i)
66
69
  end
70
+ # update input
71
+ server.reload_current() if current
72
+ server.set_input(input_name, input_value)
73
+ elsif servertemplate
74
+ require 'yaml'
75
+ require 'right_api_client'
76
+ rightscale = RightApi::Client.new(YAML.load_file(File.join(ENV['HOME'], '.rightscale', 'right_api_client.yml')))
77
+
78
+ inputs = Array.new
79
+ inputs.push({ 'name' => input_name })
80
+ inputs.push({ 'value' => input_value })
81
+
82
+ puts "input: #{inputs}" if verbose
83
+ rightscale.server_templates(:id => id).show.inputs.multi_update({ :inputs => inputs })
67
84
  end
68
-
69
- # update input
70
- server.reload_current() if current
71
- server.set_input(input_name, input_value)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rs-api-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Fordham
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-04 00:00:00.000000000 Z
11
+ date: 2013-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -69,154 +69,154 @@ dependencies:
69
69
  description: RightScale API Command Line Tools.
70
70
  email: chris@fordham-nagy.id.au
71
71
  executables:
72
- - rs-create-alert
73
- - rs-describe-rightscripts
74
- - rs-tag-resource
75
- - rs-clone-server
76
- - rs-describe-instance
72
+ - rs-bind-executable
77
73
  - rs-clone-deployment
78
- - rs-describe-cookbooks
79
- - rs-update-inputs
80
- - rs-start-server
81
- - rs-unlock-server
82
- - rs-describe-publications
83
- - rs-fetch-rightscripts
84
- - rs-describe-publication
85
- - rs-terminate-self
86
- - rs-describe-attached-vols
87
- - rs-describe-executables
88
- - rs-terminate-all
89
- - rs-describe-servers
90
- - rs-update-server-array
91
- - rs-create-repository
92
- - rs-fetch-executables
93
- - rs-relaunch-deployment
94
- - rs-run-all-boot-executables
95
- - rs-get-server-input
74
+ - rs-clone-rightscript
75
+ - rs-clone-server
76
+ - rs-create-alert
77
+ - rs-create-alert-spec
96
78
  - rs-create-org-repositories
79
+ - rs-create-repositories
80
+ - rs-create-repository
81
+ - rs-create-servertemplate
82
+ - rs-create-servertemplate-mci
83
+ - rs-describe-alert-specs
84
+ - rs-describe-alerts
85
+ - rs-describe-attached-vols
86
+ - rs-describe-cookbook
87
+ - rs-describe-cookbooks
88
+ - rs-describe-deployment
97
89
  - rs-describe-deployments
98
- - rs-ping-active-servers
99
- - rs-describe-key
100
90
  - rs-describe-ec2-ebs-snapshots
101
- - rs-describe-repositories
102
91
  - rs-describe-ec2-ebs-volumes
103
- - rs-bind-executable
104
- - rs-terminate-server
105
- - rs-run-recipe
106
- - rs-describe-servertemplates
107
- - rs-search-tags
108
- - rs-describe-keys
109
92
  - rs-describe-ec2-security-groups
110
- - rs-terminate-deployment
111
- - rs-create-servertemplate-mci
93
+ - rs-describe-executables
94
+ - rs-describe-instance
95
+ - rs-describe-instances
96
+ - rs-describe-key
97
+ - rs-describe-keys
98
+ - rs-describe-multi-cloud-images
99
+ - rs-describe-publication
100
+ - rs-describe-publications
101
+ - rs-describe-repositories
112
102
  - rs-describe-rightscript
113
- - rs-reboot-server
114
- - rs-get-array-instances
103
+ - rs-describe-rightscripts
104
+ - rs-describe-server
105
+ - rs-describe-server-array
115
106
  - rs-describe-server-arrays
116
- - rs-query-cloud
117
- - rs-describe-alert-specs
118
- - rs-launch-deployment
119
107
  - rs-describe-server-self
120
- - rs-describe-server
121
- - rs-create-alert-spec
122
- - rs-clone-rightscript
123
- - rs-relaunch-server
124
- - rs-update-input
125
- - rs-lock-server
126
- - rs-describe-instances
127
- - rs-start-deployment
128
- - rs-stop-server
129
- - rs-reboot-deployment
130
- - rs-describe-multi-cloud-images
131
- - rs-create-repositories
132
- - rs-launch-server
133
- - rs-describe-cookbook
108
+ - rs-describe-servers
109
+ - rs-describe-servertemplates
110
+ - rs-fetch-executables
111
+ - rs-fetch-rightscripts
112
+ - rs-get-array-instances
113
+ - rs-get-server-input
134
114
  - rs-get-server-monitoring
135
- - rs-run-rightscript
136
- - rs-describe-server-array
137
- - rs-tag-array
138
115
  - rs-get-server-sketchy-data
139
116
  - rs-import-publication
140
- - rs-describe-deployment
141
- - rs-create-servertemplate
142
- - rs-describe-alerts
117
+ - rs-launch-deployment
118
+ - rs-launch-server
119
+ - rs-lock-server
120
+ - rs-ping-active-servers
121
+ - rs-query-cloud
122
+ - rs-reboot-deployment
123
+ - rs-reboot-server
124
+ - rs-relaunch-deployment
125
+ - rs-relaunch-server
126
+ - rs-run-all-boot-executables
127
+ - rs-run-recipe
128
+ - rs-run-rightscript
129
+ - rs-search-tags
130
+ - rs-start-deployment
131
+ - rs-start-server
143
132
  - rs-stop-deployment
133
+ - rs-stop-server
134
+ - rs-tag-array
135
+ - rs-tag-resource
136
+ - rs-terminate-all
137
+ - rs-terminate-deployment
138
+ - rs-terminate-self
139
+ - rs-terminate-server
140
+ - rs-unlock-server
141
+ - rs-update-input
142
+ - rs-update-inputs
143
+ - rs-update-server-array
144
144
  extensions: []
145
145
  extra_rdoc_files: []
146
146
  files:
147
147
  - lib/librarian_chef_dsl_parser.rb
148
- - bin/rs-create-alert
149
- - bin/rs-describe-rightscripts
150
- - bin/rs-tag-resource
151
- - bin/rs-clone-server
152
- - bin/rs-describe-instance
148
+ - bin/rs-bind-executable
153
149
  - bin/rs-clone-deployment
154
- - bin/rs-describe-cookbooks
155
- - bin/rs-update-inputs
156
- - bin/rs-start-server
157
- - bin/rs-unlock-server
158
- - bin/rs-describe-publications
159
- - bin/rs-fetch-rightscripts
160
- - bin/rs-describe-publication
161
- - bin/rs-terminate-self
162
- - bin/rs-describe-attached-vols
163
- - bin/rs-describe-executables
164
- - bin/rs-terminate-all
165
- - bin/rs-describe-servers
166
- - bin/rs-update-server-array
167
- - bin/rs-create-repository
168
- - bin/rs-fetch-executables
169
- - bin/rs-relaunch-deployment
170
- - bin/rs-run-all-boot-executables
171
- - bin/rs-get-server-input
150
+ - bin/rs-clone-rightscript
151
+ - bin/rs-clone-server
152
+ - bin/rs-create-alert
153
+ - bin/rs-create-alert-spec
172
154
  - bin/rs-create-org-repositories
155
+ - bin/rs-create-repositories
156
+ - bin/rs-create-repository
157
+ - bin/rs-create-servertemplate
158
+ - bin/rs-create-servertemplate-mci
159
+ - bin/rs-describe-alert-specs
160
+ - bin/rs-describe-alerts
161
+ - bin/rs-describe-attached-vols
162
+ - bin/rs-describe-cookbook
163
+ - bin/rs-describe-cookbooks
164
+ - bin/rs-describe-deployment
173
165
  - bin/rs-describe-deployments
174
- - bin/rs-ping-active-servers
175
- - bin/rs-describe-key
176
166
  - bin/rs-describe-ec2-ebs-snapshots
177
- - bin/rs-describe-repositories
178
167
  - bin/rs-describe-ec2-ebs-volumes
179
- - bin/rs-bind-executable
180
- - bin/rs-terminate-server
181
- - bin/rs-run-recipe
182
- - bin/rs-describe-servertemplates
183
- - bin/rs-search-tags
184
- - bin/rs-describe-keys
185
168
  - bin/rs-describe-ec2-security-groups
186
- - bin/rs-terminate-deployment
187
- - bin/rs-create-servertemplate-mci
169
+ - bin/rs-describe-executables
170
+ - bin/rs-describe-instance
171
+ - bin/rs-describe-instances
172
+ - bin/rs-describe-key
173
+ - bin/rs-describe-keys
174
+ - bin/rs-describe-multi-cloud-images
175
+ - bin/rs-describe-publication
176
+ - bin/rs-describe-publications
177
+ - bin/rs-describe-repositories
188
178
  - bin/rs-describe-rightscript
189
- - bin/rs-reboot-server
190
- - bin/rs-get-array-instances
179
+ - bin/rs-describe-rightscripts
180
+ - bin/rs-describe-server
181
+ - bin/rs-describe-server-array
191
182
  - bin/rs-describe-server-arrays
192
- - bin/rs-query-cloud
193
- - bin/rs-describe-alert-specs
194
- - bin/rs-launch-deployment
195
183
  - bin/rs-describe-server-self
196
- - bin/rs-describe-server
197
- - bin/rs-create-alert-spec
198
- - bin/rs-clone-rightscript
199
- - bin/rs-relaunch-server
200
- - bin/rs-update-input
201
- - bin/rs-lock-server
202
- - bin/rs-describe-instances
203
- - bin/rs-start-deployment
204
- - bin/rs-stop-server
205
- - bin/rs-reboot-deployment
206
- - bin/rs-describe-multi-cloud-images
207
- - bin/rs-create-repositories
208
- - bin/rs-launch-server
209
- - bin/rs-describe-cookbook
184
+ - bin/rs-describe-servers
185
+ - bin/rs-describe-servertemplates
186
+ - bin/rs-fetch-executables
187
+ - bin/rs-fetch-rightscripts
188
+ - bin/rs-get-array-instances
189
+ - bin/rs-get-server-input
210
190
  - bin/rs-get-server-monitoring
211
- - bin/rs-run-rightscript
212
- - bin/rs-describe-server-array
213
- - bin/rs-tag-array
214
191
  - bin/rs-get-server-sketchy-data
215
192
  - bin/rs-import-publication
216
- - bin/rs-describe-deployment
217
- - bin/rs-create-servertemplate
218
- - bin/rs-describe-alerts
193
+ - bin/rs-launch-deployment
194
+ - bin/rs-launch-server
195
+ - bin/rs-lock-server
196
+ - bin/rs-ping-active-servers
197
+ - bin/rs-query-cloud
198
+ - bin/rs-reboot-deployment
199
+ - bin/rs-reboot-server
200
+ - bin/rs-relaunch-deployment
201
+ - bin/rs-relaunch-server
202
+ - bin/rs-run-all-boot-executables
203
+ - bin/rs-run-recipe
204
+ - bin/rs-run-rightscript
205
+ - bin/rs-search-tags
206
+ - bin/rs-start-deployment
207
+ - bin/rs-start-server
219
208
  - bin/rs-stop-deployment
209
+ - bin/rs-stop-server
210
+ - bin/rs-tag-array
211
+ - bin/rs-tag-resource
212
+ - bin/rs-terminate-all
213
+ - bin/rs-terminate-deployment
214
+ - bin/rs-terminate-self
215
+ - bin/rs-terminate-server
216
+ - bin/rs-unlock-server
217
+ - bin/rs-update-input
218
+ - bin/rs-update-inputs
219
+ - bin/rs-update-server-array
220
220
  homepage: https://github.com/flaccid/rs-api-tools
221
221
  licenses:
222
222
  - Apache 2