chef-server-webui 0.9.18 → 0.10.0.beta.0

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.
Files changed (68) hide show
  1. data/README.rdoc +0 -4
  2. data/Rakefile +10 -0
  3. data/app/controllers/application.rb +34 -6
  4. data/app/controllers/cookbooks.rb +125 -35
  5. data/app/controllers/environments.rb +235 -0
  6. data/app/controllers/nodes.rb +26 -19
  7. data/app/controllers/roles.rb +37 -44
  8. data/app/controllers/search.rb +13 -13
  9. data/app/helpers/application_helper.rb +34 -0
  10. data/app/views/cookbooks/_cookbook_content.html.haml +7 -0
  11. data/app/views/cookbooks/index.html.haml +22 -7
  12. data/app/views/cookbooks/show.html.haml +8 -50
  13. data/app/views/environments/_form.html.erb +91 -0
  14. data/app/views/environments/_navigation.html.haml +9 -0
  15. data/app/views/environments/_version_selector.html.erb +8 -0
  16. data/app/views/environments/edit.html.erb +17 -0
  17. data/app/views/environments/index.html.haml +26 -0
  18. data/app/views/environments/new.html.erb +17 -0
  19. data/app/views/environments/show.html.haml +31 -0
  20. data/app/views/layout/application.html.haml +22 -13
  21. data/app/views/layout/login.html.haml +2 -2
  22. data/app/views/nodes/_form.html.erb +69 -0
  23. data/app/views/nodes/index.html.haml +6 -2
  24. data/app/views/nodes/show.html.haml +4 -1
  25. data/app/views/roles/_form.html.erb +92 -0
  26. data/app/views/roles/_run_lists.html.erb +26 -0
  27. data/app/views/roles/edit.html.haml +1 -1
  28. data/app/views/roles/new.html.haml +1 -1
  29. data/app/views/roles/show.html.haml +10 -7
  30. data/app/views/status/index.html.haml +2 -1
  31. data/bin/chef-server-webui +1 -0
  32. data/config/router.rb +14 -8
  33. data/lib/chef-server-webui/version.rb +1 -1
  34. data/public/javascripts/chef.js +206 -49
  35. data/public/javascripts/cookbook_constraint_ctrl.js +191 -0
  36. data/public/javascripts/cookbook_versions.js +75 -0
  37. data/public/javascripts/jquery-1.4.4.min.js +167 -0
  38. data/public/javascripts/jquery.suggest.js +250 -0
  39. data/public/stylesheets/base.css +30 -24
  40. data/public/stylesheets/chef.css +212 -45
  41. data/public/stylesheets/jquery.suggest.css +28 -0
  42. data/public/stylesheets/jsonedit_main.css +26 -10
  43. data/public/stylesheets/themes/djime-cerulean/style.css +31 -18
  44. metadata +22 -29
  45. data/app/controllers/cookbook_attributes.rb +0 -41
  46. data/app/controllers/cookbook_definitions.rb +0 -41
  47. data/app/controllers/cookbook_files.rb +0 -39
  48. data/app/controllers/cookbook_libraries.rb +0 -41
  49. data/app/controllers/cookbook_recipes.rb +0 -40
  50. data/app/controllers/cookbook_templates.rb +0 -57
  51. data/app/helpers/cookbook_attributes_helper.rb +0 -7
  52. data/app/helpers/cookbook_definitions_helper.rb +0 -8
  53. data/app/helpers/cookbook_files_helper.rb +0 -8
  54. data/app/helpers/cookbook_libraries_helper.rb +0 -7
  55. data/app/helpers/cookbook_recipes_helper.rb +0 -8
  56. data/app/helpers/cookbook_templates_helper.rb +0 -8
  57. data/app/helpers/exceptions_helper.rb +0 -6
  58. data/app/helpers/global_helpers.rb +0 -39
  59. data/app/helpers/nodes_helper.rb +0 -43
  60. data/app/helpers/openid_consumer_helper.rb +0 -8
  61. data/app/helpers/openid_register_helper.rb +0 -8
  62. data/app/helpers/openid_server_helper.rb +0 -6
  63. data/app/helpers/openid_server_helpers.rb +0 -32
  64. data/app/helpers/roles_helper.rb +0 -5
  65. data/app/helpers/search_entries_helper.rb +0 -8
  66. data/app/helpers/search_helper.rb +0 -44
  67. data/app/views/nodes/_form.html.haml +0 -52
  68. data/app/views/roles/_form.html.haml +0 -52
@@ -11,7 +11,7 @@ a img { border: none; }
11
11
 
12
12
  body {
13
13
  font-size: 12px;
14
- font-family: sans-serif;
14
+ font-family: sans-serif;
15
15
  }
16
16
 
17
17
  #container {
@@ -24,12 +24,12 @@ body {
24
24
 
25
25
  #header {
26
26
  position: relative;
27
- padding-top: 1px;
27
+ padding-top: 1px;
28
28
  }
29
29
 
30
30
  #header h1 {
31
31
  margin: 0;
32
- padding: 10px 0;
32
+ padding: 10px 0;
33
33
  font-size: 30px;
34
34
  }
35
35
 
@@ -37,9 +37,13 @@ body {
37
37
  text-decoration: none;
38
38
  }
39
39
 
40
- #main {
41
- width: 80%;
42
- float: left;
40
+ #main {
41
+ width: 100%;
42
+ float: left;
43
+ }
44
+
45
+ #main.loginPage {
46
+ width: 80%;
43
47
  }
44
48
 
45
49
  .actions-bar {
@@ -58,10 +62,10 @@ body {
58
62
 
59
63
  #sidebar {
60
64
  width: 15%;
61
- float: right;
65
+ float: right;
62
66
  }
63
67
 
64
- #sidebar h3 {
68
+ #sidebar h3 {
65
69
  padding: 10px 15px;
66
70
  margin: 0;
67
71
  font-size: 13px;
@@ -87,6 +91,7 @@ body {
87
91
 
88
92
  #wrapper {
89
93
  padding-top: 20px;
94
+ background: #F4F4F6;
90
95
  }
91
96
 
92
97
  #main .block {
@@ -95,7 +100,7 @@ body {
95
100
  }
96
101
 
97
102
  #main .block .content .inner {
98
- padding: 0 15px 15px;
103
+ padding: 0 15px 15px;
99
104
  }
100
105
 
101
106
  #main .main p.first {
@@ -105,7 +110,7 @@ body {
105
110
  #user-navigation {
106
111
  position: absolute;
107
112
  top: 0px;
108
- right: 20px;
113
+ right: 20px;
109
114
  }
110
115
 
111
116
  #main-navigation {
@@ -119,7 +124,8 @@ body {
119
124
  }
120
125
 
121
126
  #user-navigation ul li, #main-navigation ul li, .secondary-navigation ul li {
122
- float: left;
127
+ float: left;
128
+ padding-top: 0;
123
129
  }
124
130
 
125
131
  #main-navigation ul li {
@@ -127,7 +133,7 @@ body {
127
133
  }
128
134
 
129
135
  #user-navigation ul li {
130
- padding: 5px 10px;
136
+ padding: 60px 10px;
131
137
  }
132
138
 
133
139
  #main-navigation ul li a:link, #main-navigation ul li a:visited, #main-navigation ul li a:hover, #main-navigation ul li a:active,
@@ -143,14 +149,14 @@ body {
143
149
  }
144
150
 
145
151
  .secondary-navigation {
146
- font-size: 13px;
152
+ font-size: 13px;
147
153
  border-bottom-width: 10px;
148
154
  border-bottom-style: solid;
149
155
  }
150
156
 
151
157
  .secondary-navigation ul li a {
152
158
  display: block;
153
- padding: 10px 15px;
159
+ padding: 10px 15px;
154
160
  }
155
161
 
156
162
  #footer {
@@ -161,7 +167,7 @@ body {
161
167
 
162
168
  .pagination a, .pagination span {
163
169
  padding: 2px 5px;
164
- margin-right: 5px;
170
+ margin-right: 5px;
165
171
  display: block;
166
172
  float: left;
167
173
  border-style: solid;
@@ -169,17 +175,17 @@ body {
169
175
  }
170
176
 
171
177
  .pagination span.current {
172
- font-weight: bold;
178
+ font-weight: bold;
173
179
  }
174
180
 
175
181
  .pagination a {
176
- text-decoration: none;
182
+ text-decoration: none;
177
183
  }
178
184
 
179
185
  /* tables */
180
186
  .table {
181
187
  width: 100%;
182
- border-collapse: collapse;
188
+ border-collapse: collapse;
183
189
  margin-bottom: 15px;
184
190
  }
185
191
 
@@ -194,7 +200,7 @@ body {
194
200
  }
195
201
 
196
202
  .table th.last {
197
- width: 200px;
203
+ width: 200px;
198
204
  }
199
205
 
200
206
  .table .checkbox {
@@ -261,8 +267,8 @@ input.checkbox {
261
267
  }
262
268
 
263
269
  .form label.label {
264
- display: block;
265
- padding-bottom: 2px;
270
+ display: inline-block;
271
+ padding-bottom: 2px;
266
272
  font-weight: bold;
267
273
  }
268
274
 
@@ -294,7 +300,7 @@ ul.list li {
294
300
  }
295
301
 
296
302
  ul.list li .left {
297
- float: left;
303
+ float: left;
298
304
  }
299
305
 
300
306
  ul.list li .left .avatar {
@@ -317,7 +323,7 @@ ul.list li .item .avatar {
317
323
 
318
324
  #box {
319
325
  width: 500px;
320
- margin: 50px auto;
326
+ margin: 50px auto;
321
327
  }
322
328
 
323
329
  #box .block {
@@ -326,7 +332,7 @@ ul.list li .item .avatar {
326
332
 
327
333
  #box .block h2 {
328
334
  padding: 10px 15px;
329
- margin: 0;
335
+ margin: 0;
330
336
  }
331
337
 
332
338
  #box .block .content {
@@ -17,6 +17,10 @@
17
17
  .ruby .expr { color: #227; }
18
18
  .ruby .escape { color: #277; }
19
19
 
20
+ .todo{
21
+ color:red;
22
+ }
23
+
20
24
  .files {
21
25
  padding-left: 20px;
22
26
  }
@@ -27,7 +31,6 @@
27
31
  }
28
32
 
29
33
  .search td {
30
- /*overflow: auto;*/
31
34
  font-size: 0.8em;
32
35
  }
33
36
 
@@ -49,35 +52,164 @@ dl dt { font-weight: bold; }
49
52
  padding-top: 2px;
50
53
  }
51
54
 
52
- div.sortable {
53
- height: 200px;
54
- width: 350px;
55
- margin-right: 10px;
56
- border: 1px solid black;
57
- overflow-y: scroll;
58
- background: #777777;
55
+ div.roleFormContainer, div.nodeFormContainer, div.environmentFormContainer{
56
+ padding: 0 15px 15px;
57
+ min-width:1050px;
58
+ }
59
+
60
+ div#run_list_editor_container {
61
+ min-height:450px;
62
+ min-width:1050px;
63
+ }
64
+
65
+ div.runListEditorColumn {
66
+ float:left;
67
+ margin-top: 20px;
68
+ }
69
+
70
+ div#current_run_list_display_container{
71
+ margin-left:20px;
72
+ }
73
+
74
+ span#cookbook_constraints_picker{
75
+ float:left;
76
+ margin-left:10px;
77
+ }
78
+
79
+ span#cookbook_constraints_picker select{
80
+ size: 15;
81
+ margin-right:50px;
82
+ }
83
+
84
+ span#environment_run_list_selection_control{
85
+ float:right;
86
+ margin-right:10px;
87
+ }
88
+
89
+ div.runListEditorLabel, div#activeRunListName{
90
+ font-size: 1.2em;
91
+ font-weight: bold;
59
92
  }
60
93
 
61
- div.sortable.run-list {
62
- height: 430px;
63
- width: 350px;
94
+ div.runListEditorLabel{
95
+ padding: 3px 0 5px 0;
96
+ margin: 0;
97
+ color:white;
98
+ background:#005573;
99
+ background: -moz-linear-gradient(top, #007BA7, #005573);
100
+ background:-webkit-gradient(linear, left top, left bottom, from(#007BA7), to(#005573));
101
+ text-shadow: #005573 0px -1px 0px;
102
+ display: block;
103
+ text-align:center;
104
+ }
105
+
106
+ div.activeRunListLabel{
107
+ padding-right:15px;
108
+ padding-left:15px;
109
+ }
110
+
111
+ div#activeRunListName{
112
+ padding:2px;
113
+ text-align:center;
114
+ }
115
+
116
+ div.runListItemListContainer{
117
+ border: 1px solid #999;
118
+ margin-top:5px;
64
119
  margin-right: 10px;
65
- border: 1px solid black;
120
+ box-shadow:2px 2px 2px #dfdfdf;
121
+ /* Safari 5 has a weird problem where these divs increase in width by 15px after updating contents with ajax.
122
+ Problem doesn't occur in webkit nightlies. setting max-width works around.*/
123
+ max-width:360px;
124
+ }
125
+
126
+ div.emptyRunListControlsContainer{
127
+ padding:10px;
128
+ }
129
+
130
+ div.runListAvailableItemContainer, div.runListContainer {
131
+ width: 360px;
66
132
  overflow-y: scroll;
67
- background: #777777;
133
+ background: #eee;
134
+ }
135
+
136
+ div.runListAvailableItemContainer{
137
+ height: 200px;
138
+ }
139
+
140
+ div.runListAvailableItemContainer .spinner{
141
+ position: relative;
142
+ top: 100px;
143
+ left: 0;
144
+ z-index: 1000;
145
+ text-align: center;
68
146
  }
69
147
 
70
- div.run-list ul.ui-sortable#for_node, div.run-list ul.ui-sortable#for_role {
71
- min-height: 420px;
148
+ div.runListContainer{
149
+ height: 407px;
72
150
  }
73
151
 
152
+ div.runListContainerForNode{
153
+ height:432px;
154
+ }
155
+
156
+ div.inactive, ul.inactive{
157
+ display:none;
158
+ }
159
+
160
+ ul.runListAvailableItemList, ul.runListItemList {
161
+ padding:5px 0px 0px 0px;
162
+ min-height:185px;
163
+ width:100%;
164
+ list-style-type: none;
165
+ margin: 0px;
166
+ }
167
+
168
+ ul.runListItemList{
169
+ min-height:405.5px;
170
+ }
171
+
172
+ ul#for_node.runListItemList{
173
+ min-height:420.5px;
174
+ }
175
+
176
+ li.runListItem{
177
+ margin: 0px 5px 5px 5px;
178
+ padding: 5px;
179
+ width: 93%;
180
+ overflow:hidden;
181
+ cursor:pointer;
182
+ }
183
+
184
+ li.displayRunListItem{
185
+ padding: 5px 5px 5px 5px;
186
+ margin: 0px 5px 0px 5px;
187
+ width: 93%;
188
+ border-bottom:1px solid #eee;
189
+ }
190
+
191
+ div.cloneRunListOption{
192
+ padding: 5px 5px 5px 5px;
193
+ margin: 0px 5px 0px 5px;
194
+ width: 93%;
195
+ }
196
+
197
+ div.runListAdditionalControls{
198
+ min-height:15px;
199
+ padding:5px;
200
+ color:#fff;
201
+ background:#005573;
202
+ background:-webkit-gradient(linear, left top, left bottom, from(#006589), to(#005573));
203
+ }
204
+ div.runListAdditionalControls a{
205
+ color:#fff;
206
+ }
74
207
 
75
208
  div.clear {
76
209
  clear: left;
77
210
  }
78
211
 
79
212
  table.form th {
80
- /* vertical-align: top; */
81
213
  font-weight: bold;
82
214
  text-align: right;
83
215
  padding-right: 10px;
@@ -91,7 +223,6 @@ div.help {
91
223
 
92
224
  table.form td {
93
225
  text-align: left;
94
- /* vertical-align: top; */
95
226
  }
96
227
 
97
228
  table.sortable td {
@@ -121,7 +252,7 @@ div#tree {
121
252
  float: left;
122
253
  }
123
254
 
124
- div#jform {
255
+ div#jform {
125
256
  float: left;
126
257
  margin-left: 50px;
127
258
  }
@@ -130,23 +261,17 @@ div.editor {
130
261
  border: 1px solid black;
131
262
  }
132
263
 
133
- #node_available_roles, #node_available_recipes, #for_node, #for_role, #available_recipes {
134
- list-style-type: none;
135
- margin: 0;
136
- padding: 0;
137
- float: left;
138
- margin-right: 10px;
139
- background: #eee;
140
- padding: 5px;
141
- width: 325px;
142
- min-height:200px;
264
+ div.attrEditor{
265
+ clear:both;
143
266
  }
144
267
 
145
- #node_available_roles li, #node_available_recipes li, #for_node li, #for_role li, #available_recipes li {
146
- margin: 0 5px 5px 5px;
147
- padding: 5px;
148
- width: 310px;
149
- overflow:hidden;
268
+ div.attrEditor #treecontainer, div.attrEditor #tabcontainer{
269
+ float:left;
270
+ }
271
+
272
+ div.attrEditor #tabcontainer{
273
+ position:relative;
274
+ top:0px;
150
275
  }
151
276
 
152
277
  #sidebar_block {
@@ -157,21 +282,63 @@ div.editor {
157
282
  display: none;
158
283
  }
159
284
 
160
- div.tooltip {
161
- background-color: #000;
162
- outline: 1px solid #669;
163
- border: 2px solid #fff;
164
- padding: 10px 15px;
285
+ div.tooltip {
286
+ background-color: #000;
287
+ outline: 1px solid #669;
288
+ border: 2px solid #fff;
289
+ padding: 10px 15px;
165
290
  /* width: 200px; */
166
- display: none;
167
- color: #fff;
168
- text-align: left;
169
- font-size: 12px;
170
- outline-radius: 4px;
171
- -moz-outline-radius: 4px;
172
- -webkit-outline-radius: 4px;
291
+ display: none;
292
+ color: #fff;
293
+ text-align: left;
294
+ font-size: 12px;
295
+ outline-radius: 4px;
296
+ -moz-outline-radius: 4px;
297
+ -webkit-outline-radius: 4px;
173
298
  }
174
299
 
175
300
  table.tooltip {
176
301
  width: 190px;
177
302
  }
303
+
304
+ h1 a, h1 label, h1 .title-select {
305
+ display: inline-block;
306
+ vertical-align: middle;
307
+ }
308
+
309
+ h1 label {
310
+ font-size: 12px;
311
+ color: #F7F7F8;
312
+ padding-left: 10px;
313
+ }
314
+
315
+ .cookbook_version_constraints_cb_name{
316
+ width:80%;
317
+ }
318
+
319
+ a.cookbook_version_toggle{
320
+ text-decoration:none;
321
+ font-weight:bold;
322
+ font-size: 24px;
323
+ }
324
+
325
+ ul.cookbook_versions{
326
+ list-style-type:none;
327
+ }
328
+
329
+ #cookbook_version_table{
330
+ width: auto;
331
+ }
332
+
333
+ tbody.cookbook_versions td {
334
+ vertical-align:top;
335
+ }
336
+
337
+ .invalid_version_error {
338
+ color: red;
339
+ font-weight: bold;
340
+ }
341
+
342
+ #cbVerAddRow td {
343
+ background: #c1c8d2;
344
+ }