rhc 0.87.8 → 0.88.9
Sign up to get free protection for your applications and to get access to all the features.
- data/COPYRIGHT +1 -0
- data/LICENSE +9 -200
- data/Rakefile +2 -2
- data/bin/rhc +0 -23
- data/bin/rhc-app +19 -26
- data/bin/rhc-chk +0 -22
- data/bin/rhc-create-app +10 -33
- data/bin/rhc-create-domain +1 -23
- data/bin/rhc-ctl-app +2 -24
- data/bin/rhc-ctl-domain +1 -23
- data/bin/rhc-domain +1 -24
- data/bin/rhc-domain-info +1 -23
- data/bin/rhc-port-forward +0 -22
- data/bin/rhc-snapshot +1 -23
- data/bin/rhc-sshkey +1 -24
- data/bin/rhc-tail-files +0 -22
- data/bin/rhc-user-info +1 -25
- data/lib/rhc +2 -25
- data/lib/rhc-common.rb +55 -35
- metadata +6 -5
data/COPYRIGHT
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
Copyright 2012 Red Hat, Inc. and/or its affiliates.
|
data/LICENSE
CHANGED
@@ -1,202 +1,11 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
2
|
+
you may not use this file except in compliance with the License.
|
3
|
+
You may obtain a copy of the License at
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
1. Definitions.
|
8
|
-
|
9
|
-
"License" shall mean the terms and conditions for use, reproduction,
|
10
|
-
and distribution as defined by Sections 1 through 9 of this document.
|
11
|
-
|
12
|
-
"Licensor" shall mean the copyright owner or entity authorized by
|
13
|
-
the copyright owner that is granting the License.
|
14
|
-
|
15
|
-
"Legal Entity" shall mean the union of the acting entity and all
|
16
|
-
other entities that control, are controlled by, or are under common
|
17
|
-
control with that entity. For the purposes of this definition,
|
18
|
-
"control" means (i) the power, direct or indirect, to cause the
|
19
|
-
direction or management of such entity, whether by contract or
|
20
|
-
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
21
|
-
outstanding shares, or (iii) beneficial ownership of such entity.
|
22
|
-
|
23
|
-
"You" (or "Your") shall mean an individual or Legal Entity
|
24
|
-
exercising permissions granted by this License.
|
25
|
-
|
26
|
-
"Source" form shall mean the preferred form for making modifications,
|
27
|
-
including but not limited to software source code, documentation
|
28
|
-
source, and configuration files.
|
29
|
-
|
30
|
-
"Object" form shall mean any form resulting from mechanical
|
31
|
-
transformation or translation of a Source form, including but
|
32
|
-
not limited to compiled object code, generated documentation,
|
33
|
-
and conversions to other media types.
|
34
|
-
|
35
|
-
"Work" shall mean the work of authorship, whether in Source or
|
36
|
-
Object form, made available under the License, as indicated by a
|
37
|
-
copyright notice that is included in or attached to the work
|
38
|
-
(an example is provided in the Appendix below).
|
39
|
-
|
40
|
-
"Derivative Works" shall mean any work, whether in Source or Object
|
41
|
-
form, that is based on (or derived from) the Work and for which the
|
42
|
-
editorial revisions, annotations, elaborations, or other modifications
|
43
|
-
represent, as a whole, an original work of authorship. For the purposes
|
44
|
-
of this License, Derivative Works shall not include works that remain
|
45
|
-
separable from, or merely link (or bind by name) to the interfaces of,
|
46
|
-
the Work and Derivative Works thereof.
|
47
|
-
|
48
|
-
"Contribution" shall mean any work of authorship, including
|
49
|
-
the original version of the Work and any modifications or additions
|
50
|
-
to that Work or Derivative Works thereof, that is intentionally
|
51
|
-
submitted to Licensor for inclusion in the Work by the copyright owner
|
52
|
-
or by an individual or Legal Entity authorized to submit on behalf of
|
53
|
-
the copyright owner. For the purposes of this definition, "submitted"
|
54
|
-
means any form of electronic, verbal, or written communication sent
|
55
|
-
to the Licensor or its representatives, including but not limited to
|
56
|
-
communication on electronic mailing lists, source code control systems,
|
57
|
-
and issue tracking systems that are managed by, or on behalf of, the
|
58
|
-
Licensor for the purpose of discussing and improving the Work, but
|
59
|
-
excluding communication that is conspicuously marked or otherwise
|
60
|
-
designated in writing by the copyright owner as "Not a Contribution."
|
61
|
-
|
62
|
-
"Contributor" shall mean Licensor and any individual or Legal Entity
|
63
|
-
on behalf of whom a Contribution has been received by Licensor and
|
64
|
-
subsequently incorporated within the Work.
|
65
|
-
|
66
|
-
2. Grant of Copyright License. Subject to the terms and conditions of
|
67
|
-
this License, each Contributor hereby grants to You a perpetual,
|
68
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
69
|
-
copyright license to reproduce, prepare Derivative Works of,
|
70
|
-
publicly display, publicly perform, sublicense, and distribute the
|
71
|
-
Work and such Derivative Works in Source or Object form.
|
72
|
-
|
73
|
-
3. Grant of Patent License. Subject to the terms and conditions of
|
74
|
-
this License, each Contributor hereby grants to You a perpetual,
|
75
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
76
|
-
(except as stated in this section) patent license to make, have made,
|
77
|
-
use, offer to sell, sell, import, and otherwise transfer the Work,
|
78
|
-
where such license applies only to those patent claims licensable
|
79
|
-
by such Contributor that are necessarily infringed by their
|
80
|
-
Contribution(s) alone or by combination of their Contribution(s)
|
81
|
-
with the Work to which such Contribution(s) was submitted. If You
|
82
|
-
institute patent litigation against any entity (including a
|
83
|
-
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
84
|
-
or a Contribution incorporated within the Work constitutes direct
|
85
|
-
or contributory patent infringement, then any patent licenses
|
86
|
-
granted to You under this License for that Work shall terminate
|
87
|
-
as of the date such litigation is filed.
|
88
|
-
|
89
|
-
4. Redistribution. You may reproduce and distribute copies of the
|
90
|
-
Work or Derivative Works thereof in any medium, with or without
|
91
|
-
modifications, and in Source or Object form, provided that You
|
92
|
-
meet the following conditions:
|
93
|
-
|
94
|
-
(a) You must give any other recipients of the Work or
|
95
|
-
Derivative Works a copy of this License; and
|
96
|
-
|
97
|
-
(b) You must cause any modified files to carry prominent notices
|
98
|
-
stating that You changed the files; and
|
99
|
-
|
100
|
-
(c) You must retain, in the Source form of any Derivative Works
|
101
|
-
that You distribute, all copyright, patent, trademark, and
|
102
|
-
attribution notices from the Source form of the Work,
|
103
|
-
excluding those notices that do not pertain to any part of
|
104
|
-
the Derivative Works; and
|
105
|
-
|
106
|
-
(d) If the Work includes a "NOTICE" text file as part of its
|
107
|
-
distribution, then any Derivative Works that You distribute must
|
108
|
-
include a readable copy of the attribution notices contained
|
109
|
-
within such NOTICE file, excluding those notices that do not
|
110
|
-
pertain to any part of the Derivative Works, in at least one
|
111
|
-
of the following places: within a NOTICE text file distributed
|
112
|
-
as part of the Derivative Works; within the Source form or
|
113
|
-
documentation, if provided along with the Derivative Works; or,
|
114
|
-
within a display generated by the Derivative Works, if and
|
115
|
-
wherever such third-party notices normally appear. The contents
|
116
|
-
of the NOTICE file are for informational purposes only and
|
117
|
-
do not modify the License. You may add Your own attribution
|
118
|
-
notices within Derivative Works that You distribute, alongside
|
119
|
-
or as an addendum to the NOTICE text from the Work, provided
|
120
|
-
that such additional attribution notices cannot be construed
|
121
|
-
as modifying the License.
|
122
|
-
|
123
|
-
You may add Your own copyright statement to Your modifications and
|
124
|
-
may provide additional or different license terms and conditions
|
125
|
-
for use, reproduction, or distribution of Your modifications, or
|
126
|
-
for any such Derivative Works as a whole, provided Your use,
|
127
|
-
reproduction, and distribution of the Work otherwise complies with
|
128
|
-
the conditions stated in this License.
|
129
|
-
|
130
|
-
5. Submission of Contributions. Unless You explicitly state otherwise,
|
131
|
-
any Contribution intentionally submitted for inclusion in the Work
|
132
|
-
by You to the Licensor shall be under the terms and conditions of
|
133
|
-
this License, without any additional terms or conditions.
|
134
|
-
Notwithstanding the above, nothing herein shall supersede or modify
|
135
|
-
the terms of any separate license agreement you may have executed
|
136
|
-
with Licensor regarding such Contributions.
|
137
|
-
|
138
|
-
6. Trademarks. This License does not grant permission to use the trade
|
139
|
-
names, trademarks, service marks, or product names of the Licensor,
|
140
|
-
except as required for reasonable and customary use in describing the
|
141
|
-
origin of the Work and reproducing the content of the NOTICE file.
|
142
|
-
|
143
|
-
7. Disclaimer of Warranty. Unless required by applicable law or
|
144
|
-
agreed to in writing, Licensor provides the Work (and each
|
145
|
-
Contributor provides its Contributions) on an "AS IS" BASIS,
|
146
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
147
|
-
implied, including, without limitation, any warranties or conditions
|
148
|
-
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
149
|
-
PARTICULAR PURPOSE. You are solely responsible for determining the
|
150
|
-
appropriateness of using or redistributing the Work and assume any
|
151
|
-
risks associated with Your exercise of permissions under this License.
|
152
|
-
|
153
|
-
8. Limitation of Liability. In no event and under no legal theory,
|
154
|
-
whether in tort (including negligence), contract, or otherwise,
|
155
|
-
unless required by applicable law (such as deliberate and grossly
|
156
|
-
negligent acts) or agreed to in writing, shall any Contributor be
|
157
|
-
liable to You for damages, including any direct, indirect, special,
|
158
|
-
incidental, or consequential damages of any character arising as a
|
159
|
-
result of this License or out of the use or inability to use the
|
160
|
-
Work (including but not limited to damages for loss of goodwill,
|
161
|
-
work stoppage, computer failure or malfunction, or any and all
|
162
|
-
other commercial damages or losses), even if such Contributor
|
163
|
-
has been advised of the possibility of such damages.
|
164
|
-
|
165
|
-
9. Accepting Warranty or Additional Liability. While redistributing
|
166
|
-
the Work or Derivative Works thereof, You may choose to offer,
|
167
|
-
and charge a fee for, acceptance of support, warranty, indemnity,
|
168
|
-
or other liability obligations and/or rights consistent with this
|
169
|
-
License. However, in accepting such obligations, You may act only
|
170
|
-
on Your own behalf and on Your sole responsibility, not on behalf
|
171
|
-
of any other Contributor, and only if You agree to indemnify,
|
172
|
-
defend, and hold each Contributor harmless for any liability
|
173
|
-
incurred by, or claims asserted against, such Contributor by reason
|
174
|
-
of your accepting any such warranty or additional liability.
|
175
|
-
|
176
|
-
END OF TERMS AND CONDITIONS
|
177
|
-
|
178
|
-
APPENDIX: How to apply the Apache License to your work.
|
179
|
-
|
180
|
-
To apply the Apache License to your work, attach the following
|
181
|
-
boilerplate notice, with the fields enclosed by brackets "[]"
|
182
|
-
replaced with your own identifying information. (Don't include
|
183
|
-
the brackets!) The text should be enclosed in the appropriate
|
184
|
-
comment syntax for the file format. We also recommend that a
|
185
|
-
file or class name and description of purpose be included on the
|
186
|
-
same "printed page" as the copyright notice for easier
|
187
|
-
identification within third-party archives.
|
188
|
-
|
189
|
-
Copyright [yyyy] [name of copyright owner]
|
190
|
-
|
191
|
-
Licensed under the Apache License, Version 2.0 (the "License");
|
192
|
-
you may not use this file except in compliance with the License.
|
193
|
-
You may obtain a copy of the License at
|
194
|
-
|
195
|
-
http://www.apache.org/licenses/LICENSE-2.0
|
196
|
-
|
197
|
-
Unless required by applicable law or agreed to in writing, software
|
198
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
199
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
200
|
-
See the License for the specific language governing permissions and
|
201
|
-
limitations under the License.
|
5
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
202
6
|
|
7
|
+
Unless required by applicable law or agreed to in writing, software
|
8
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
9
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
10
|
+
See the License for the specific language governing permissions and
|
11
|
+
limitations under the License.
|
data/Rakefile
CHANGED
@@ -24,7 +24,7 @@ spec = Gem::Specification.new do |s|
|
|
24
24
|
s.homepage = %q{https://openshift.redhat.com/app/express}
|
25
25
|
s.description = %q{The client tools for the OpenShift Express platform that allow for application management.}
|
26
26
|
s.files = FileList['lib/**/*.rb', 'lib/rhc', 'bin/*', 'conf/*'].to_a
|
27
|
-
s.files += %w(LICENSE README Rakefile)
|
27
|
+
s.files += %w(LICENSE COPYRIGHT README Rakefile)
|
28
28
|
s.executables = ['rhc', 'rhc-domain', 'rhc-app', 'rhc-sshkey', 'rhc-chk', 'rhc-create-app', 'rhc-create-domain', 'rhc-ctl-domain', 'rhc-ctl-app', 'rhc-snapshot', 'rhc-domain-info', 'rhc-user-info', 'rhc-tail-files', 'rhc-port-forward']
|
29
29
|
begin
|
30
30
|
# Use Ruby version to target F13, RHEL5, Windows and OSX (assume no Xcode)
|
@@ -52,4 +52,4 @@ else
|
|
52
52
|
end
|
53
53
|
|
54
54
|
# Add the 'pkg' directory to the clean task
|
55
|
-
CLEAN.include("pkg")
|
55
|
+
CLEAN.include("pkg")
|
data/bin/rhc
CHANGED
@@ -1,27 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
|
-
|
25
2
|
#
|
26
3
|
# print help
|
27
4
|
#
|
data/bin/rhc-app
CHANGED
@@ -1,27 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
|
-
|
25
2
|
require 'rhc-common'
|
26
3
|
require 'base64'
|
27
4
|
|
@@ -73,6 +50,7 @@ List of arguments
|
|
73
50
|
-a|--app application Application name (alphanumeric - max #{RHC::APP_NAME_MAX_LENGTH} chars) (required)
|
74
51
|
-t|--type type Type of app to create (#{type_keys}) (required for creating an application)
|
75
52
|
-c|--cartridge cartridge The embedded cartrige to manage (required for the cartridge command)
|
53
|
+
-g|--gear-size size The size of the gear for this app ([small|medium|large], defaults to small)
|
76
54
|
-r|--repo path Git Repo path (defaults to ./$app_name)
|
77
55
|
-n|--nogit Only create remote space, don't pull it locally
|
78
56
|
--no-dns Skip DNS check. Must be used in combination with --nogit
|
@@ -193,6 +171,12 @@ currently being created: '#{$opt['app']}'
|
|
193
171
|
end
|
194
172
|
end
|
195
173
|
end
|
174
|
+
|
175
|
+
$opt['gear-size']='small' unless $opt['gear-size']
|
176
|
+
if !['small','medium','large'].include? $opt['gear-size']
|
177
|
+
puts "Invalid gear size: %s" % $opt['gear-size']
|
178
|
+
p_usage
|
179
|
+
end
|
196
180
|
|
197
181
|
$opt['repo'] = $opt['app'] unless $opt['repo']
|
198
182
|
|
@@ -244,13 +228,21 @@ currently being created: '#{$opt['app']}'
|
|
244
228
|
#
|
245
229
|
# Create remote application space
|
246
230
|
#
|
247
|
-
main_app = RHC::create_app($libra_server, @http, user_info, $opt['app'], $opt['type'], $opt['rhlogin'], $password, $opt['repo'], $opt['no-dns'], $opt['nogit'], false)
|
231
|
+
main_app = RHC::create_app($libra_server, @http, user_info, $opt['app'], $opt['type'], $opt['rhlogin'], $password, $opt['repo'], $opt['no-dns'], $opt['nogit'], false, $opt['gear-size'])
|
248
232
|
if jenkins_app_name
|
249
233
|
puts "Now embedding the jenkins client into '#{$opt['app']}'..."
|
250
234
|
RHC::ctl_app($libra_server, @http, $opt['app'], $opt['rhlogin'], $password, 'configure', true, 'jenkins-client-1.4', nil, false)
|
251
235
|
end
|
252
236
|
|
253
|
-
|
237
|
+
if $opt['no-dns']
|
238
|
+
# In case of the no-dns option, the availability check is not made
|
239
|
+
# This also results in the git information and app creation result not being displayed
|
240
|
+
# Hence, for this case, we print out the git url and result here
|
241
|
+
puts "git url: #{main_app[:git_url]}"
|
242
|
+
if main_app[:result] && !main_app[:result].empty?
|
243
|
+
puts "#{main_app[:result]}"
|
244
|
+
end
|
245
|
+
else
|
254
246
|
available = RHC::check_app_available(@http, main_app[:app_name], main_app[:fqdn], main_app[:health_check_path], main_app[:result], main_app[:git_url], $opt['repo'], $opt['nogit'])
|
255
247
|
if !available
|
256
248
|
puts "Unable to access your new application."
|
@@ -486,6 +478,7 @@ begin
|
|
486
478
|
["--debug", "-d", GetoptLong::NO_ARGUMENT],
|
487
479
|
["--help", "-h", GetoptLong::NO_ARGUMENT],
|
488
480
|
["--rhlogin", "-l", GetoptLong::REQUIRED_ARGUMENT],
|
481
|
+
["--gear-size", "-g", GetoptLong::REQUIRED_ARGUMENT],
|
489
482
|
["--password", "-p", GetoptLong::REQUIRED_ARGUMENT],
|
490
483
|
["--no-dns", GetoptLong::NO_ARGUMENT],
|
491
484
|
["--nogit", "-n", GetoptLong::NO_ARGUMENT],
|
@@ -600,4 +593,4 @@ else
|
|
600
593
|
p_usage
|
601
594
|
end
|
602
595
|
|
603
|
-
exit 0
|
596
|
+
exit 0
|
data/bin/rhc-chk
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
require 'net/http'
|
26
4
|
require 'net/https'
|
data/bin/rhc-create-app
CHANGED
@@ -1,33 +1,11 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
# FIXME: get better descriptions from runtime or docs team
|
27
|
-
$gear_size_order = ['small', 'large']
|
28
|
-
$valid_gear_sizes = {
|
29
|
-
'
|
30
|
-
'large'
|
5
|
+
$gear_size_order = ['small', 'medium', 'large']
|
6
|
+
$valid_gear_sizes = {'small' => 'allocates the standard resources for your application (default)',
|
7
|
+
'medium' => 'allocates a medium chunk of resources for your application',
|
8
|
+
'large' => 'allocates a larger chunk of resources for your application'
|
31
9
|
}
|
32
10
|
|
33
11
|
def p_valid_gear_sizes(invalid_gear_size)
|
@@ -52,7 +30,7 @@ Create an OpenShift Express app.
|
|
52
30
|
|
53
31
|
-a|--app application Application name (alphanumeric - max #{RHC::APP_NAME_MAX_LENGTH} chars) (required)
|
54
32
|
-t|--type type Type of app to create (#{type_keys}) (required)
|
55
|
-
-g|--gear-size size The size of the gear for this app ([small|large], defaults to small)
|
33
|
+
-g|--gear-size size The size of the gear for this app ([small|medium|large], defaults to small)
|
56
34
|
-l|--rhlogin rhlogin Red Hat login (RHN or OpenShift login with OpenShift Express access) (#{rhlogin})
|
57
35
|
-p|--password password RHLogin password (optional, will prompt)
|
58
36
|
-r|--repo path Git Repo path (defaults to ./$app_name)
|
@@ -85,7 +63,8 @@ begin
|
|
85
63
|
["--type", "-t", GetoptLong::REQUIRED_ARGUMENT],
|
86
64
|
["--gear-size", "-g", GetoptLong::REQUIRED_ARGUMENT],
|
87
65
|
["--timeout", GetoptLong::REQUIRED_ARGUMENT],
|
88
|
-
["--enable-jenkins", GetoptLong::OPTIONAL_ARGUMENT]
|
66
|
+
["--enable-jenkins", GetoptLong::OPTIONAL_ARGUMENT],
|
67
|
+
["--scaling", "-s", GetoptLong::OPTIONAL_ARGUMENT]
|
89
68
|
)
|
90
69
|
opt = {}
|
91
70
|
opts.each do |o, a|
|
@@ -134,12 +113,10 @@ if !opt['rhlogin'] || !opt['app'] || !opt['type']
|
|
134
113
|
p_usage
|
135
114
|
end
|
136
115
|
|
137
|
-
#
|
116
|
+
# Default gear size is small
|
138
117
|
gear_size = opt['gear-size']
|
139
118
|
if !gear_size
|
140
|
-
gear_size = '
|
141
|
-
elsif gear_size == 'small'
|
142
|
-
gear_size = 'std'
|
119
|
+
gear_size = 'small'
|
143
120
|
else
|
144
121
|
if !$valid_gear_sizes.include? gear_size
|
145
122
|
p_valid_gear_sizes gear_size
|
@@ -268,7 +245,7 @@ end
|
|
268
245
|
#
|
269
246
|
# Create remote application space
|
270
247
|
#
|
271
|
-
main_app = RHC::create_app(libra_server, @http, user_info, opt['app'], opt['type'], opt['rhlogin'], password, opt['repo'], opt['no-dns'], opt['nogit'], false, gear_size)
|
248
|
+
main_app = RHC::create_app(libra_server, @http, user_info, opt['app'], opt['type'], opt['rhlogin'], password, opt['repo'], opt['no-dns'], opt['nogit'], false, gear_size, opt['scaling'])
|
272
249
|
if jenkins_app_name
|
273
250
|
puts "Now embedding the jenkins client into '#{opt['app']}'..."
|
274
251
|
RHC::ctl_app(libra_server, @http, opt['app'], opt['rhlogin'], password, 'configure', true, 'jenkins-client-1.4', nil, false)
|
data/bin/rhc-create-domain
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
#
|
@@ -299,4 +277,4 @@ EOF
|
|
299
277
|
else
|
300
278
|
RHC::print_response_err(response)
|
301
279
|
end
|
302
|
-
exit 1
|
280
|
+
exit 1
|
data/bin/rhc-ctl-app
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
embed_mapper = { 'add' => 'configure', 'remove' => 'deconfigure' }
|
@@ -123,8 +101,8 @@ unless opt["embed"] or opt["command"]
|
|
123
101
|
end
|
124
102
|
|
125
103
|
if opt["command"]
|
126
|
-
unless opt["command"] =~ /^(start|stop|force-stop|restart|reload|status|destroy|tidy|add-alias|remove-alias|threaddump
|
127
|
-
puts "Invalid command '#{opt["command"]}' specified. Valid commands are (start|stop|force-stop|restart|reload|status|destroy|tidy|add-alias|remove-alias|threaddump
|
104
|
+
unless opt["command"] =~ /^(start|stop|force-stop|restart|reload|status|destroy|tidy|add-alias|remove-alias|threaddump)$/
|
105
|
+
puts "Invalid command '#{opt["command"]}' specified. Valid commands are (start|stop|force-stop|restart|reload|status|destroy|tidy|add-alias|remove-alias|threaddump)"
|
128
106
|
p_usage
|
129
107
|
end
|
130
108
|
elsif opt["embed"]
|
data/bin/rhc-ctl-domain
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
#
|
@@ -207,4 +185,4 @@ else
|
|
207
185
|
RHC::print_response_err(response)
|
208
186
|
end
|
209
187
|
puts "Failure"
|
210
|
-
exit 1
|
188
|
+
exit 1
|
data/bin/rhc-domain
CHANGED
@@ -1,27 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
|
-
|
25
2
|
require 'rhc-common'
|
26
3
|
|
27
4
|
#
|
@@ -346,4 +323,4 @@ else
|
|
346
323
|
p_usage
|
347
324
|
end
|
348
325
|
|
349
|
-
exit 0
|
326
|
+
exit 0
|
data/bin/rhc-domain-info
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
#
|
@@ -161,4 +139,4 @@ if opt['apps']
|
|
161
139
|
|
162
140
|
end
|
163
141
|
|
164
|
-
exit 0
|
142
|
+
exit 0
|
data/bin/rhc-port-forward
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
#
|
data/bin/rhc-snapshot
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
|
26
4
|
#
|
@@ -156,4 +134,4 @@ end
|
|
156
134
|
exit 1
|
157
135
|
end
|
158
136
|
puts output if opt['restore'] && debug
|
159
|
-
exit 0
|
137
|
+
exit 0
|
data/bin/rhc-sshkey
CHANGED
@@ -1,27 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
|
-
|
25
2
|
require 'rhc-common'
|
26
3
|
|
27
4
|
#
|
@@ -252,4 +229,4 @@ else
|
|
252
229
|
p_usage
|
253
230
|
end
|
254
231
|
|
255
|
-
exit 0
|
232
|
+
exit 0
|
data/bin/rhc-tail-files
CHANGED
@@ -1,26 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
2
|
require 'rhc-common'
|
25
3
|
require 'base64'
|
26
4
|
|
data/bin/rhc-user-info
CHANGED
@@ -1,28 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
# Copyright 2011 Red Hat, Inc.
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person
|
5
|
-
# obtaining a copy of this software and associated documentation files
|
6
|
-
# (the "Software"), to deal in the Software without restriction,
|
7
|
-
# including without limitation the rights to use, copy, modify, merge,
|
8
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
9
|
-
# and to permit persons to whom the Software is furnished to do so,
|
10
|
-
# subject to the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
19
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
20
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
21
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
-
# SOFTWARE.
|
23
|
-
|
24
|
-
|
25
|
-
|
26
2
|
# print deprecation warning
|
27
3
|
puts "Warning: This command is deprecated. Please use rhc-domain-info instead."
|
28
4
|
puts""
|
@@ -38,4 +14,4 @@ retcode = $?
|
|
38
14
|
|
39
15
|
exit 1 if retcode != 0
|
40
16
|
|
41
|
-
exit 0
|
17
|
+
exit 0
|
data/lib/rhc
CHANGED
@@ -1,26 +1,3 @@
|
|
1
|
-
# Copyright 2011 Red Hat, Inc.
|
2
|
-
#
|
3
|
-
# Permission is hereby granted, free of charge, to any person
|
4
|
-
# obtaining a copy of this software and associated documentation files
|
5
|
-
# (the "Software"), to deal in the Software without restriction,
|
6
|
-
# including without limitation the rights to use, copy, modify, merge,
|
7
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
8
|
-
# and to permit persons to whom the Software is furnished to do so,
|
9
|
-
# subject to the following conditions:
|
10
|
-
#
|
11
|
-
# The above copyright notice and this permission notice shall be
|
12
|
-
# included in all copies or substantial portions of the Software.
|
13
|
-
#
|
14
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
18
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
19
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
20
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
-
# SOFTWARE.
|
22
|
-
|
23
|
-
|
24
1
|
#
|
25
2
|
# This is the bash auto completion script for the rhc command
|
26
3
|
#
|
@@ -68,7 +45,7 @@ _rhc()
|
|
68
45
|
create)
|
69
46
|
opts="--debug --help --rhlogin --password --no-dns --nogit --app --repo --type --enable-jenkins --config --timeout"
|
70
47
|
;;
|
71
|
-
show | start | stop | force-stop | restart | reload | status | destroy | tidy | add-alias | remove-alias | threaddump | destroy
|
48
|
+
show | start | stop | force-stop | restart | reload | status | destroy | tidy | add-alias | remove-alias | threaddump | destroy )
|
72
49
|
opts="--debug --help --rhlogin --password --app --alias --bypass --config --timeout"
|
73
50
|
;;
|
74
51
|
tail)
|
@@ -132,4 +109,4 @@ _rhc()
|
|
132
109
|
if [ ${#opts[@]} -gt 0 ]; then COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ); fi
|
133
110
|
return 0
|
134
111
|
}
|
135
|
-
complete -o default -F _rhc rhc
|
112
|
+
complete -o default -F _rhc rhc
|
data/lib/rhc-common.rb
CHANGED
@@ -1,25 +1,3 @@
|
|
1
|
-
# Copyright 2011 Red Hat, Inc.
|
2
|
-
#
|
3
|
-
# Permission is hereby granted, free of charge, to any person
|
4
|
-
# obtaining a copy of this software and associated documentation files
|
5
|
-
# (the "Software"), to deal in the Software without restriction,
|
6
|
-
# including without limitation the rights to use, copy, modify, merge,
|
7
|
-
# publish, distribute, sublicense, and/or sell copies of the Software,
|
8
|
-
# and to permit persons to whom the Software is furnished to do so,
|
9
|
-
# subject to the following conditions:
|
10
|
-
#
|
11
|
-
# The above copyright notice and this permission notice shall be
|
12
|
-
# included in all copies or substantial portions of the Software.
|
13
|
-
#
|
14
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
18
|
-
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
19
|
-
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
20
|
-
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
-
# SOFTWARE.
|
22
|
-
|
23
1
|
require 'rubygems'
|
24
2
|
require 'fileutils'
|
25
3
|
require 'getoptlong'
|
@@ -32,14 +10,13 @@ require 'parseconfig'
|
|
32
10
|
require 'resolv'
|
33
11
|
require 'uri'
|
34
12
|
|
35
|
-
|
36
13
|
module RHC
|
37
14
|
|
38
15
|
DEFAULT_MAX_LENGTH = 16
|
39
16
|
APP_NAME_MAX_LENGTH = 32
|
40
17
|
MAX_RETRIES = 7
|
41
18
|
DEFAULT_DELAY = 2
|
42
|
-
API = "1.1.
|
19
|
+
API = "1.1.3"
|
43
20
|
PATTERN_VERSION=/\A\d+\.\d+\.\d+\z/
|
44
21
|
@mytimeout = 10
|
45
22
|
@mydebug = false
|
@@ -403,7 +380,7 @@ module RHC
|
|
403
380
|
return resp.any?
|
404
381
|
end
|
405
382
|
|
406
|
-
def self.create_app(libra_server, net_http, user_info, app_name, app_type, rhlogin, password, repo_dir=nil, no_dns=false, no_git=false, is_embedded_jenkins=false, gear_size='
|
383
|
+
def self.create_app(libra_server, net_http, user_info, app_name, app_type, rhlogin, password, repo_dir=nil, no_dns=false, no_git=false, is_embedded_jenkins=false, gear_size='small',scale=false)
|
407
384
|
puts "Creating application: #{app_name}"
|
408
385
|
|
409
386
|
data = {:cartridge => app_type,
|
@@ -415,12 +392,54 @@ module RHC
|
|
415
392
|
if @mydebug
|
416
393
|
data[:debug] = true
|
417
394
|
end
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
395
|
+
|
396
|
+
# Need to use the new REST API for scaling apps
|
397
|
+
# We'll need to then get the new application using the existing
|
398
|
+
# API in order to access the rest of the logic in this function
|
399
|
+
if scale
|
400
|
+
$LOAD_PATH << File.expand_path(File.join(File.dirname(__FILE__),'..','..','rhc-rest','lib'))
|
401
|
+
require 'rhc-rest'
|
402
|
+
# Need to have a fake HTTPResponse object for passing to print_reponse_err
|
403
|
+
Struct.new('FakeResponse',:body,:code,:content_type)
|
404
|
+
|
405
|
+
# TODO: This logic should be checked by broker
|
406
|
+
unscalable = ['haproxy-1.4','jenkins-1.4','diy-0.1']
|
407
|
+
print_response_err(Struct::FakeResponse.new("Can not create a scaling app of type #{app_type}",403)) if unscalable.include?(app_type)
|
408
|
+
|
409
|
+
end_point = "https://#{libra_server}/broker/rest"
|
410
|
+
client = Rhc::Rest::Client.new(end_point, rhlogin, password)
|
411
|
+
|
412
|
+
domain = client.find_domain(user_info['user_info']['namespace']).first
|
413
|
+
# Catch errors
|
414
|
+
begin
|
415
|
+
application = domain.add_application(app_name,app_type,scale)
|
416
|
+
|
417
|
+
# Variables that are needed for the rest of the function
|
418
|
+
app_uuid = application.uuid
|
419
|
+
result = "Successfully created application: #{app_name}"
|
420
|
+
|
421
|
+
# Since health_check_path is not returned, we need to fudge it for now
|
422
|
+
health_check_path =
|
423
|
+
case app_type
|
424
|
+
when "php-5.3"
|
425
|
+
"health_check.php"
|
426
|
+
when "perl-5.10"
|
427
|
+
"health_check.pl"
|
428
|
+
when "diy-0.1", "ruby-1.8", "jenkins-1.4", "python-2.6", "haproxy-1.4", "jbossas-7", "nodejs-0.6"
|
429
|
+
"health"
|
430
|
+
end
|
431
|
+
|
432
|
+
puts "DEBUG: '#{app_name}' creation returned success." if @mydebug
|
433
|
+
rescue Rhc::Rest::ValidationException => e
|
434
|
+
print_response_err(Struct::FakeResponse.new(e.message,406))
|
435
|
+
end
|
436
|
+
else
|
437
|
+
json_data = generate_json(data)
|
438
|
+
|
439
|
+
url = URI.parse("https://#{libra_server}/broker/cartridge")
|
440
|
+
response = http_post(net_http, url, json_data, password)
|
441
|
+
|
442
|
+
if response.code == '200'
|
424
443
|
json_resp = JSON.parse(response.body)
|
425
444
|
print_response_success(json_resp)
|
426
445
|
json_data = JSON.parse(json_resp['data'])
|
@@ -428,8 +447,9 @@ module RHC
|
|
428
447
|
app_uuid = json_data['uuid']
|
429
448
|
result = json_resp['result']
|
430
449
|
puts "DEBUG: '#{app_name}' creation returned success." if @mydebug
|
431
|
-
|
450
|
+
else
|
432
451
|
print_response_err(response)
|
452
|
+
end
|
433
453
|
end
|
434
454
|
|
435
455
|
#
|
@@ -442,12 +462,12 @@ module RHC
|
|
442
462
|
destroy_app(libra_server, net_http, app_name, rhlogin, password)
|
443
463
|
end
|
444
464
|
end
|
445
|
-
|
465
|
+
|
446
466
|
namespace = user_info['user_info']['namespace']
|
447
467
|
rhc_domain = user_info['user_info']['rhc_domain']
|
448
468
|
|
449
469
|
fqdn = "#{app_name}-#{namespace}.#{rhc_domain}"
|
450
|
-
|
470
|
+
|
451
471
|
loop = 0
|
452
472
|
#
|
453
473
|
# Confirm that the host exists in DNS
|
@@ -976,4 +996,4 @@ SSH
|
|
976
996
|
File.chmod(0700, ssh_config_d)
|
977
997
|
File.chmod(0600, ssh_config)
|
978
998
|
end
|
979
|
-
end
|
999
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rhc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 365
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 88
|
9
|
+
- 9
|
10
|
+
version: 0.88.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Red Hat
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-03-
|
18
|
+
date: 2012-03-17 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: json_pure
|
@@ -85,6 +85,7 @@ files:
|
|
85
85
|
- bin/rhc-ctl-domain
|
86
86
|
- conf/express.conf
|
87
87
|
- LICENSE
|
88
|
+
- COPYRIGHT
|
88
89
|
- README
|
89
90
|
- Rakefile
|
90
91
|
homepage: https://openshift.redhat.com/app/express
|