ocp_registry 0.0.1.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. data/.gitignore +25 -0
  2. data/Gemfile +17 -0
  3. data/Gemfile.lock +65 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/bin/ocp_registry +28 -0
  7. data/config/example-mysql.yml +40 -0
  8. data/config/example-sqlite.yml +33 -0
  9. data/lib/ocp_registry.rb +29 -0
  10. data/lib/ocp_registry/api_controller.rb +146 -0
  11. data/lib/ocp_registry/application_manager.rb +213 -0
  12. data/lib/ocp_registry/cloud_manager/mock.rb +5 -0
  13. data/lib/ocp_registry/cloud_manager/mock/mock.rb +191 -0
  14. data/lib/ocp_registry/cloud_manager/mock/model.rb +22 -0
  15. data/lib/ocp_registry/cloud_manager/openstack.rb +4 -0
  16. data/lib/ocp_registry/cloud_manager/openstack/cinder_helper.rb +27 -0
  17. data/lib/ocp_registry/cloud_manager/openstack/keystone_helper.rb +57 -0
  18. data/lib/ocp_registry/cloud_manager/openstack/nova_helper.rb +37 -0
  19. data/lib/ocp_registry/cloud_manager/openstack/openstack.rb +126 -0
  20. data/lib/ocp_registry/common.rb +54 -0
  21. data/lib/ocp_registry/config.rb +96 -0
  22. data/lib/ocp_registry/db/001_db_initialize.rb +16 -0
  23. data/lib/ocp_registry/error.rb +16 -0
  24. data/lib/ocp_registry/mail_client.rb +141 -0
  25. data/lib/ocp_registry/models.rb +7 -0
  26. data/lib/ocp_registry/models/registry_application.rb +10 -0
  27. data/lib/ocp_registry/runner.rb +47 -0
  28. data/lib/ocp_registry/version.rb +3 -0
  29. data/lib/ocp_registry/yaml_helper.rb +23 -0
  30. data/mail_template/approve_admin.erb +14 -0
  31. data/mail_template/approve_user.erb +22 -0
  32. data/mail_template/refuse_admin.erb +16 -0
  33. data/mail_template/refuse_user.erb +17 -0
  34. data/mail_template/request_admin.erb +15 -0
  35. data/mail_template/request_user.erb +16 -0
  36. data/ocp_registry.gemspec +34 -0
  37. data/public/bootstrap/css/bootstrap-responsive.css +1109 -0
  38. data/public/bootstrap/css/bootstrap-responsive.min.css +9 -0
  39. data/public/bootstrap/css/bootstrap.css +6167 -0
  40. data/public/bootstrap/css/bootstrap.min.css +9 -0
  41. data/public/bootstrap/img/glyphicons-halflings-white.png +0 -0
  42. data/public/bootstrap/img/glyphicons-halflings.png +0 -0
  43. data/public/bootstrap/js/bootstrap.js +2280 -0
  44. data/public/bootstrap/js/bootstrap.min.js +6 -0
  45. data/public/common.css +104 -0
  46. data/public/favicon.ico +0 -0
  47. data/public/images/loading.gif +0 -0
  48. data/public/jquery-1.10.2.min.js +6 -0
  49. data/public/jquery-1.10.2.min.map +1 -0
  50. data/public/jquery.json-2.4.min.js +23 -0
  51. data/public/noty/.gitignore +8 -0
  52. data/public/noty/LICENSE.txt +20 -0
  53. data/public/noty/README.markdown +22 -0
  54. data/public/noty/demo/allLayouts.html +91 -0
  55. data/public/noty/demo/allTypes.html +86 -0
  56. data/public/noty/demo/api.html +103 -0
  57. data/public/noty/demo/buttons.css +320 -0
  58. data/public/noty/demo/consumingAlert.html +78 -0
  59. data/public/noty/demo/customContainer.html +90 -0
  60. data/public/noty/demo/index.html +66 -0
  61. data/public/noty/demo/jquery-1.7.2.min.js +4 -0
  62. data/public/noty/demo/usingMaxVisible.html +104 -0
  63. data/public/noty/demo/usingWithButtons.html +104 -0
  64. data/public/noty/demo/usingWithButtons2.html +98 -0
  65. data/public/noty/demo/usingWithModal.html +87 -0
  66. data/public/noty/demo/usingWithOldOptions.html +110 -0
  67. data/public/noty/js/jquery.noty.js +547 -0
  68. data/public/noty/js/layouts/bottom.js +34 -0
  69. data/public/noty/js/layouts/bottomCenter.js +41 -0
  70. data/public/noty/js/layouts/bottomLeft.js +43 -0
  71. data/public/noty/js/layouts/bottomRight.js +43 -0
  72. data/public/noty/js/layouts/center.js +56 -0
  73. data/public/noty/js/layouts/centerLeft.js +61 -0
  74. data/public/noty/js/layouts/centerRight.js +61 -0
  75. data/public/noty/js/layouts/inline.js +31 -0
  76. data/public/noty/js/layouts/top.js +34 -0
  77. data/public/noty/js/layouts/topCenter.js +41 -0
  78. data/public/noty/js/layouts/topLeft.js +43 -0
  79. data/public/noty/js/layouts/topRight.js +43 -0
  80. data/public/noty/js/promise.js +432 -0
  81. data/public/noty/js/themes/default.js +156 -0
  82. data/views/apply.erb +134 -0
  83. data/views/base.erb +25 -0
  84. data/views/list.erb +41 -0
  85. data/views/review.erb +141 -0
  86. data/views/show.erb +96 -0
  87. data/views/view.erb +7 -0
  88. metadata +294 -0
data/views/show.erb ADDED
@@ -0,0 +1,96 @@
1
+ <%
2
+ settings=Yajl::load(data[:settings])
3
+ %>
4
+
5
+ <div class="tenantOpt">
6
+ <ul id="optTab" class="nav nav-tabs">
7
+ <li><a href="#tenantInfo" data-toggle="tab">Project Info</a></li>
8
+ <li><a href="#quota" data-toggle="tab">Quota</a></li>
9
+ </ul>
10
+
11
+ <div class="tab-content">
12
+ <div class="tab-pane" id="tenantInfo">
13
+ <label>Project Name</label>
14
+ <input type="text" name="project" value="<%=data[:project]%>" placeholder="Put the project name here.">
15
+
16
+ <label>Description</label>
17
+ <input type="text" name="description" value="<%=data[:description]%>" placeholder="Put the project description here.">
18
+
19
+ <label>Email</label>
20
+ <input type="text" name="email" value="<%=data[:email]%>" placeholder="Put your valid email address here.">
21
+ </div>
22
+ <div class="tab-pane" id="quota">
23
+ <label>Metadata Items</label>
24
+ <input type="text" name="metadata_items" value="<%=settings["metadata_items"]%>">
25
+
26
+ <label>VCPUs</label>
27
+ <input type="text" name="cores" value="<%=settings["cores"]%>">
28
+
29
+ <label>Instances</label>
30
+ <input type="text" name="instances" value="<%=settings["instances"]%>">
31
+
32
+ <label>Injected Files</label>
33
+ <input type="text" name="injected_files" value="<%=settings["injected_files"]%>">
34
+
35
+ <label>Injected Files Content Bytes</label>
36
+ <input type="text" name="injected_file_content_bytes" value="<%=settings["injected_file_content_bytes"]%>">
37
+
38
+ <label>Volumes</label>
39
+ <input type="text" name="volumes" value="<%=settings["volumes"]%>">
40
+
41
+ <label>Gigabytes</label>
42
+ <input type="text" name="gigabytes" value="<%=settings["gigabytes"]%>">
43
+
44
+ <label>RAM(MB)</label>
45
+ <input type="text" name="ram" value="<%=settings["ram"]%>">
46
+
47
+ <label>Floating IPs</label>
48
+ <input type="text" name="floating_ips" value="<%=settings["floating_ips"]%>">
49
+
50
+ <label>Fixed IPs</label>
51
+ <input type="text" name="fixed_ips" value="<%=settings["fixed_ips"]%>">
52
+
53
+ <label>Security Groups</label>
54
+ <input type="text" name="security_groups" value="<%=settings["security_groups"]%>">
55
+
56
+ <label>Security Group Rules</label>
57
+ <input type="text" name="security_group_rules" value="<%=settings["security_group_rules"]%>">
58
+ </div>
59
+ </div>
60
+
61
+ <div class="optExplaination" id="optExplaination">
62
+ Details of your project
63
+ </div>
64
+
65
+ <div class="clear"></div>
66
+
67
+ </div>
68
+
69
+ <script type="text/javascript">
70
+
71
+ (function(){
72
+
73
+ $(document).ready(init);
74
+
75
+ function init(){
76
+ initFields();
77
+ initOptTab();
78
+ }
79
+
80
+ function initFields(){
81
+ var readonly=<%= readonly==true ? 1:0%>;
82
+ if(readonly){
83
+ $('.tab-content input').attr('readonly', true);
84
+ $('.tab-content textarea').attr('readonly', true);
85
+ $('.tab-content select').attr('disabled', true);
86
+ }else{
87
+ //do nothing
88
+ }
89
+ }
90
+
91
+ function initOptTab(){
92
+ $('#optTab a:first').tab('show');
93
+ }
94
+
95
+ })();
96
+ </script>
data/views/view.erb ADDED
@@ -0,0 +1,7 @@
1
+
2
+ <div class="bordered optDialog">
3
+ <legend>Browse Project Request</legend>
4
+
5
+ <%=erb :show, :locals => {:data=>data, :readonly=>true} %>
6
+
7
+ </div>
metadata ADDED
@@ -0,0 +1,294 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ocp_registry
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1.alpha
5
+ prerelease: 6
6
+ platform: ruby
7
+ authors:
8
+ - Wei Tie
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-07-12 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '1.3'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '1.3'
30
+ - !ruby/object:Gem::Dependency
31
+ name: fog
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: 1.12.0
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 1.12.0
46
+ - !ruby/object:Gem::Dependency
47
+ name: mysql2
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: 0.3.0
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 0.3.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: sqlite3
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: 1.3.7
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 1.3.7
78
+ - !ruby/object:Gem::Dependency
79
+ name: sequel
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: 4.0.0
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 4.0.0
94
+ - !ruby/object:Gem::Dependency
95
+ name: sinatra
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ~>
100
+ - !ruby/object:Gem::Version
101
+ version: 1.4.3
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 1.4.3
110
+ - !ruby/object:Gem::Dependency
111
+ name: thin
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 1.5.1
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.5.1
126
+ - !ruby/object:Gem::Dependency
127
+ name: tlsmail
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - '='
132
+ - !ruby/object:Gem::Version
133
+ version: 0.0.1
134
+ type: :runtime
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - '='
140
+ - !ruby/object:Gem::Version
141
+ version: 0.0.1
142
+ - !ruby/object:Gem::Dependency
143
+ name: yajl-ruby
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ~>
148
+ - !ruby/object:Gem::Version
149
+ version: 1.1.0
150
+ type: :runtime
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ~>
156
+ - !ruby/object:Gem::Version
157
+ version: 1.1.0
158
+ - !ruby/object:Gem::Dependency
159
+ name: rspec
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ~>
164
+ - !ruby/object:Gem::Version
165
+ version: 2.13.0
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: 2.13.0
174
+ description: openstack self-registration app
175
+ email:
176
+ - nuaafe@gmail.com
177
+ executables:
178
+ - ocp_registry
179
+ extensions: []
180
+ extra_rdoc_files: []
181
+ files:
182
+ - .gitignore
183
+ - Gemfile
184
+ - Gemfile.lock
185
+ - LICENSE.txt
186
+ - README.md
187
+ - bin/ocp_registry
188
+ - config/example-mysql.yml
189
+ - config/example-sqlite.yml
190
+ - lib/ocp_registry.rb
191
+ - lib/ocp_registry/api_controller.rb
192
+ - lib/ocp_registry/application_manager.rb
193
+ - lib/ocp_registry/cloud_manager/mock.rb
194
+ - lib/ocp_registry/cloud_manager/mock/mock.rb
195
+ - lib/ocp_registry/cloud_manager/mock/model.rb
196
+ - lib/ocp_registry/cloud_manager/openstack.rb
197
+ - lib/ocp_registry/cloud_manager/openstack/cinder_helper.rb
198
+ - lib/ocp_registry/cloud_manager/openstack/keystone_helper.rb
199
+ - lib/ocp_registry/cloud_manager/openstack/nova_helper.rb
200
+ - lib/ocp_registry/cloud_manager/openstack/openstack.rb
201
+ - lib/ocp_registry/common.rb
202
+ - lib/ocp_registry/config.rb
203
+ - lib/ocp_registry/db/001_db_initialize.rb
204
+ - lib/ocp_registry/error.rb
205
+ - lib/ocp_registry/mail_client.rb
206
+ - lib/ocp_registry/models.rb
207
+ - lib/ocp_registry/models/registry_application.rb
208
+ - lib/ocp_registry/runner.rb
209
+ - lib/ocp_registry/version.rb
210
+ - lib/ocp_registry/yaml_helper.rb
211
+ - mail_template/approve_admin.erb
212
+ - mail_template/approve_user.erb
213
+ - mail_template/refuse_admin.erb
214
+ - mail_template/refuse_user.erb
215
+ - mail_template/request_admin.erb
216
+ - mail_template/request_user.erb
217
+ - ocp_registry.gemspec
218
+ - public/bootstrap/css/bootstrap-responsive.css
219
+ - public/bootstrap/css/bootstrap-responsive.min.css
220
+ - public/bootstrap/css/bootstrap.css
221
+ - public/bootstrap/css/bootstrap.min.css
222
+ - public/bootstrap/img/glyphicons-halflings-white.png
223
+ - public/bootstrap/img/glyphicons-halflings.png
224
+ - public/bootstrap/js/bootstrap.js
225
+ - public/bootstrap/js/bootstrap.min.js
226
+ - public/common.css
227
+ - public/favicon.ico
228
+ - public/images/loading.gif
229
+ - public/jquery-1.10.2.min.js
230
+ - public/jquery-1.10.2.min.map
231
+ - public/jquery.json-2.4.min.js
232
+ - public/noty/.gitignore
233
+ - public/noty/LICENSE.txt
234
+ - public/noty/README.markdown
235
+ - public/noty/demo/allLayouts.html
236
+ - public/noty/demo/allTypes.html
237
+ - public/noty/demo/api.html
238
+ - public/noty/demo/buttons.css
239
+ - public/noty/demo/consumingAlert.html
240
+ - public/noty/demo/customContainer.html
241
+ - public/noty/demo/index.html
242
+ - public/noty/demo/jquery-1.7.2.min.js
243
+ - public/noty/demo/usingMaxVisible.html
244
+ - public/noty/demo/usingWithButtons.html
245
+ - public/noty/demo/usingWithButtons2.html
246
+ - public/noty/demo/usingWithModal.html
247
+ - public/noty/demo/usingWithOldOptions.html
248
+ - public/noty/js/jquery.noty.js
249
+ - public/noty/js/layouts/bottom.js
250
+ - public/noty/js/layouts/bottomCenter.js
251
+ - public/noty/js/layouts/bottomLeft.js
252
+ - public/noty/js/layouts/bottomRight.js
253
+ - public/noty/js/layouts/center.js
254
+ - public/noty/js/layouts/centerLeft.js
255
+ - public/noty/js/layouts/centerRight.js
256
+ - public/noty/js/layouts/inline.js
257
+ - public/noty/js/layouts/top.js
258
+ - public/noty/js/layouts/topCenter.js
259
+ - public/noty/js/layouts/topLeft.js
260
+ - public/noty/js/layouts/topRight.js
261
+ - public/noty/js/promise.js
262
+ - public/noty/js/themes/default.js
263
+ - views/apply.erb
264
+ - views/base.erb
265
+ - views/list.erb
266
+ - views/review.erb
267
+ - views/show.erb
268
+ - views/view.erb
269
+ homepage: ''
270
+ licenses:
271
+ - MIT
272
+ post_install_message:
273
+ rdoc_options: []
274
+ require_paths:
275
+ - lib
276
+ required_ruby_version: !ruby/object:Gem::Requirement
277
+ none: false
278
+ requirements:
279
+ - - ! '>='
280
+ - !ruby/object:Gem::Version
281
+ version: 1.9.3
282
+ required_rubygems_version: !ruby/object:Gem::Requirement
283
+ none: false
284
+ requirements:
285
+ - - ! '>'
286
+ - !ruby/object:Gem::Version
287
+ version: 1.3.1
288
+ requirements: []
289
+ rubyforge_project:
290
+ rubygems_version: 1.8.25
291
+ signing_key:
292
+ specification_version: 3
293
+ summary: openstack self-registration app
294
+ test_files: []