kibana-rack 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (213) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +1 -0
  3. data.tar.gz.sig +0 -0
  4. data/.editorconfig +13 -0
  5. data/.gitattributes +2 -0
  6. data/.gitignore +10 -0
  7. data/.overcommit.yml +11 -0
  8. data/.rspec +2 -0
  9. data/.rubocop.yml +24 -0
  10. data/.simplecov +12 -0
  11. data/.travis.yml +5 -0
  12. data/.yardopts +13 -0
  13. data/CHANGELOG.md +5 -0
  14. data/CONTRIBUTING.md +105 -0
  15. data/Gemfile +30 -0
  16. data/LICENSE.txt +22 -0
  17. data/README.md +269 -0
  18. data/Rakefile +27 -0
  19. data/dashboards/blank.json +32 -0
  20. data/dashboards/default.json +90 -0
  21. data/dashboards/guided.json +272 -0
  22. data/dashboards/logstash.js +138 -0
  23. data/dashboards/logstash.json +227 -0
  24. data/dashboards/noted.json +161 -0
  25. data/examples/dashboards/default.json +90 -0
  26. data/examples/rack/config.ru +14 -0
  27. data/examples/rack_basic_auth/config.ru +18 -0
  28. data/examples/rack_basic_auth/dashboards/default.json +90 -0
  29. data/examples/rails/app/controllers/application_controller.rb +3 -0
  30. data/examples/rails/app/helpers/application_helper.rb +2 -0
  31. data/examples/rails/app/kibana/blank.json +32 -0
  32. data/examples/rails/app/kibana/default.json +90 -0
  33. data/examples/rails/app/kibana/guided.json +272 -0
  34. data/examples/rails/app/kibana/logstash.json +227 -0
  35. data/examples/rails/app/kibana/noted.json +161 -0
  36. data/examples/rails/bin/bundle +3 -0
  37. data/examples/rails/bin/rails +4 -0
  38. data/examples/rails/bin/rake +4 -0
  39. data/examples/rails/config.ru +2 -0
  40. data/examples/rails/config/application.rb +11 -0
  41. data/examples/rails/config/boot.rb +2 -0
  42. data/examples/rails/config/environment.rb +2 -0
  43. data/examples/rails/config/environments/development.rb +7 -0
  44. data/examples/rails/config/environments/production.rb +11 -0
  45. data/examples/rails/config/environments/test.rb +11 -0
  46. data/examples/rails/config/initializers/cookies_serializer.rb +1 -0
  47. data/examples/rails/config/initializers/filter_parameter_logging.rb +1 -0
  48. data/examples/rails/config/initializers/kibana.rb +3 -0
  49. data/examples/rails/config/initializers/session_store.rb +1 -0
  50. data/examples/rails/config/initializers/wrap_parameters.rb +3 -0
  51. data/examples/rails/config/routes.rb +3 -0
  52. data/examples/rails/config/secrets.yml +9 -0
  53. data/examples/rails/log/.keep +0 -0
  54. data/examples/sinatra/config.ru +27 -0
  55. data/examples/sinatra/dashboards/default.json +90 -0
  56. data/kibana-rack.gemspec +28 -0
  57. data/lib/kibana/rack.rb +34 -0
  58. data/lib/kibana/rack/version.rb +5 -0
  59. data/lib/kibana/rack/web.rb +60 -0
  60. data/spec/fixtures/dashboards/default.json +90 -0
  61. data/spec/fixtures/dashboards/templated.json +1 -0
  62. data/spec/spec_helper.rb +32 -0
  63. data/spec/unit/kibana/rack/web_spec.rb +69 -0
  64. data/spec/unit/kibana/rack_spec.rb +4 -0
  65. data/tabolario.gpg +31 -0
  66. data/tabolario.pem +21 -0
  67. data/web/assets/LICENSE.md +13 -0
  68. data/web/assets/README.md +69 -0
  69. data/web/assets/app/app.js +24 -0
  70. data/web/assets/app/components/require.config.js +4 -0
  71. data/web/assets/app/factories/store.js +4 -0
  72. data/web/assets/app/panels/bettermap/editor.html +1 -0
  73. data/web/assets/app/panels/bettermap/leaflet/images/layers-2x.png +0 -0
  74. data/web/assets/app/panels/bettermap/leaflet/images/layers.png +0 -0
  75. data/web/assets/app/panels/bettermap/leaflet/images/marker-icon-2x.png +0 -0
  76. data/web/assets/app/panels/bettermap/leaflet/images/marker-icon.png +0 -0
  77. data/web/assets/app/panels/bettermap/leaflet/images/marker-shadow.png +0 -0
  78. data/web/assets/app/panels/bettermap/leaflet/leaflet.css +1 -0
  79. data/web/assets/app/panels/bettermap/leaflet/leaflet.ie.css +1 -0
  80. data/web/assets/app/panels/bettermap/leaflet/leaflet.js +7 -0
  81. data/web/assets/app/panels/bettermap/leaflet/plugins.css +1 -0
  82. data/web/assets/app/panels/bettermap/leaflet/plugins.js +4 -0
  83. data/web/assets/app/panels/bettermap/module.css +1 -0
  84. data/web/assets/app/panels/bettermap/module.html +3 -0
  85. data/web/assets/app/panels/bettermap/module.js +8 -0
  86. data/web/assets/app/panels/column/editor.html +1 -0
  87. data/web/assets/app/panels/column/module.html +1 -0
  88. data/web/assets/app/panels/column/module.js +4 -0
  89. data/web/assets/app/panels/column/panelgeneral.html +1 -0
  90. data/web/assets/app/panels/dashcontrol/editor.html +1 -0
  91. data/web/assets/app/panels/dashcontrol/module.html +1 -0
  92. data/web/assets/app/panels/dashcontrol/module.js +4 -0
  93. data/web/assets/app/panels/derivequeries/editor.html +1 -0
  94. data/web/assets/app/panels/derivequeries/module.html +1 -0
  95. data/web/assets/app/panels/derivequeries/module.js +4 -0
  96. data/web/assets/app/panels/fields/editor.html +1 -0
  97. data/web/assets/app/panels/fields/micropanel.html +1 -0
  98. data/web/assets/app/panels/fields/module.html +1 -0
  99. data/web/assets/app/panels/fields/module.js +4 -0
  100. data/web/assets/app/panels/filtering/editor.html +1 -0
  101. data/web/assets/app/panels/filtering/meta.html +3 -0
  102. data/web/assets/app/panels/filtering/module.html +30 -0
  103. data/web/assets/app/panels/filtering/module.js +4 -0
  104. data/web/assets/app/panels/goal/editor.html +1 -0
  105. data/web/assets/app/panels/goal/module.html +1 -0
  106. data/web/assets/app/panels/goal/module.js +4 -0
  107. data/web/assets/app/panels/histogram/editor.html +1 -0
  108. data/web/assets/app/panels/histogram/module.html +40 -0
  109. data/web/assets/app/panels/histogram/module.js +5 -0
  110. data/web/assets/app/panels/histogram/queriesEditor.html +9 -0
  111. data/web/assets/app/panels/histogram/styleEditor.html +1 -0
  112. data/web/assets/app/panels/hits/editor.html +1 -0
  113. data/web/assets/app/panels/hits/module.html +1 -0
  114. data/web/assets/app/panels/hits/module.js +4 -0
  115. data/web/assets/app/panels/map/editor.html +1 -0
  116. data/web/assets/app/panels/map/lib/map.europe.js +4 -0
  117. data/web/assets/app/panels/map/lib/map.usa.js +4 -0
  118. data/web/assets/app/panels/map/lib/map.world.js +4 -0
  119. data/web/assets/app/panels/map/module.html +58 -0
  120. data/web/assets/app/panels/map/module.js +5 -0
  121. data/web/assets/app/panels/query/editor.html +1 -0
  122. data/web/assets/app/panels/query/editors/lucene.html +0 -0
  123. data/web/assets/app/panels/query/editors/regex.html +0 -0
  124. data/web/assets/app/panels/query/editors/topN.html +1 -0
  125. data/web/assets/app/panels/query/help/lucene.html +1 -0
  126. data/web/assets/app/panels/query/help/regex.html +1 -0
  127. data/web/assets/app/panels/query/help/topN.html +1 -0
  128. data/web/assets/app/panels/query/helpModal.html +1 -0
  129. data/web/assets/app/panels/query/meta.html +3 -0
  130. data/web/assets/app/panels/query/module.html +1 -0
  131. data/web/assets/app/panels/query/module.js +4 -0
  132. data/web/assets/app/panels/query/query.css +1 -0
  133. data/web/assets/app/panels/sparklines/editor.html +1 -0
  134. data/web/assets/app/panels/sparklines/module.html +1 -0
  135. data/web/assets/app/panels/sparklines/module.js +4 -0
  136. data/web/assets/app/panels/stats/editor.html +1 -0
  137. data/web/assets/app/panels/stats/module.html +7 -0
  138. data/web/assets/app/panels/stats/module.js +4 -0
  139. data/web/assets/app/panels/table/editor.html +1 -0
  140. data/web/assets/app/panels/table/micropanel.html +3 -0
  141. data/web/assets/app/panels/table/modal.html +31 -0
  142. data/web/assets/app/panels/table/module.html +52 -0
  143. data/web/assets/app/panels/table/module.js +4 -0
  144. data/web/assets/app/panels/table/pagination.html +1 -0
  145. data/web/assets/app/panels/terms/editor.html +1 -0
  146. data/web/assets/app/panels/terms/module.html +24 -0
  147. data/web/assets/app/panels/terms/module.js +4 -0
  148. data/web/assets/app/panels/text/editor.html +1 -0
  149. data/web/assets/app/panels/text/module.html +1 -0
  150. data/web/assets/app/panels/text/module.js +4 -0
  151. data/web/assets/app/panels/timepicker/custom.html +31 -0
  152. data/web/assets/app/panels/timepicker/editor.html +1 -0
  153. data/web/assets/app/panels/timepicker/module.html +3 -0
  154. data/web/assets/app/panels/timepicker/module.js +4 -0
  155. data/web/assets/app/panels/timepicker/refreshctrl.html +1 -0
  156. data/web/assets/app/panels/trends/editor.html +1 -0
  157. data/web/assets/app/panels/trends/module.html +9 -0
  158. data/web/assets/app/panels/trends/module.js +4 -0
  159. data/web/assets/app/partials/dashLoader.html +3 -0
  160. data/web/assets/app/partials/dashLoaderShare.html +1 -0
  161. data/web/assets/app/partials/dashboard.html +1 -0
  162. data/web/assets/app/partials/dasheditor.html +1 -0
  163. data/web/assets/app/partials/inspector.html +2 -0
  164. data/web/assets/app/partials/load.html +1 -0
  165. data/web/assets/app/partials/modal.html +1 -0
  166. data/web/assets/app/partials/paneladd.html +1 -0
  167. data/web/assets/app/partials/paneleditor.html +1 -0
  168. data/web/assets/app/partials/panelgeneral.html +1 -0
  169. data/web/assets/app/partials/querySelect.html +9 -0
  170. data/web/assets/app/partials/roweditor.html +1 -0
  171. data/web/assets/build.txt +153 -0
  172. data/web/assets/css/animate.min.css +1 -0
  173. data/web/assets/css/bootstrap-responsive.min.css +9 -0
  174. data/web/assets/css/bootstrap.dark.less +6290 -0
  175. data/web/assets/css/bootstrap.dark.min.css +9 -0
  176. data/web/assets/css/bootstrap.light.less +6287 -0
  177. data/web/assets/css/bootstrap.light.min.css +9 -0
  178. data/web/assets/css/font-awesome.min.css +1 -0
  179. data/web/assets/css/normalize.min.css +1 -0
  180. data/web/assets/css/timepicker.css +18 -0
  181. data/web/assets/favicon.ico +0 -0
  182. data/web/assets/font/FontAwesome.otf +0 -0
  183. data/web/assets/font/fontawesome-webfont.eot +0 -0
  184. data/web/assets/font/fontawesome-webfont.svg +399 -0
  185. data/web/assets/font/fontawesome-webfont.ttf +0 -0
  186. data/web/assets/font/fontawesome-webfont.woff +0 -0
  187. data/web/assets/img/annotation-icon.png +0 -0
  188. data/web/assets/img/cubes.png +0 -0
  189. data/web/assets/img/glyphicons-halflings-white.png +0 -0
  190. data/web/assets/img/glyphicons-halflings.png +0 -0
  191. data/web/assets/img/kibana.png +0 -0
  192. data/web/assets/img/light.png +0 -0
  193. data/web/assets/img/load.gif +0 -0
  194. data/web/assets/img/load_big.gif +0 -0
  195. data/web/assets/img/small.png +0 -0
  196. data/web/assets/index.html +1 -0
  197. data/web/assets/vendor/LICENSE.json +94 -0
  198. data/web/assets/vendor/bootstrap/less/tests/buttons.html +139 -0
  199. data/web/assets/vendor/bootstrap/less/tests/css-tests.css +3 -0
  200. data/web/assets/vendor/bootstrap/less/tests/css-tests.html +1399 -0
  201. data/web/assets/vendor/bootstrap/less/tests/forms-responsive.html +71 -0
  202. data/web/assets/vendor/bootstrap/less/tests/forms.html +179 -0
  203. data/web/assets/vendor/bootstrap/less/tests/navbar-fixed-top.html +104 -0
  204. data/web/assets/vendor/bootstrap/less/tests/navbar-static-top.html +107 -0
  205. data/web/assets/vendor/bootstrap/less/tests/navbar.html +107 -0
  206. data/web/assets/vendor/require/css-build.js +4 -0
  207. data/web/assets/vendor/require/require.js +4 -0
  208. data/web/assets/vendor/require/tmpl.js +4 -0
  209. data/web/assets/vendor/timezone.js +4 -0
  210. data/web/views/config.erb +80 -0
  211. data/web/views/index.erb +56 -0
  212. metadata +336 -0
  213. metadata.gz.sig +3 -0
@@ -0,0 +1,227 @@
1
+ {
2
+ "title": "Logstash Search",
3
+ "services": {
4
+ "query": {
5
+ "list": {
6
+ "0": {
7
+ "query": "{{ARGS.query || '*'}}",
8
+ "alias": "",
9
+ "color": "#7EB26D",
10
+ "id": 0,
11
+ "pin": false,
12
+ "type": "lucene"
13
+ }
14
+ },
15
+ "ids": [
16
+ 0
17
+ ]
18
+ },
19
+ "filter": {
20
+ "list": {
21
+ "0": {
22
+ "type": "time",
23
+ "field": "@timestamp",
24
+ "from": "now-{{ARGS.from || '24h'}}",
25
+ "to": "now",
26
+ "mandate": "must",
27
+ "active": true,
28
+ "alias": "",
29
+ "id": 0
30
+ }
31
+ },
32
+ "ids": [
33
+ 0
34
+ ]
35
+ }
36
+ },
37
+ "rows": [
38
+ {
39
+ "title": "Graph",
40
+ "height": "350px",
41
+ "editable": true,
42
+ "collapse": false,
43
+ "collapsable": true,
44
+ "panels": [
45
+ {
46
+ "span": 12,
47
+ "editable": true,
48
+ "group": [
49
+ "default"
50
+ ],
51
+ "type": "histogram",
52
+ "mode": "count",
53
+ "time_field": "@timestamp",
54
+ "value_field": null,
55
+ "auto_int": true,
56
+ "resolution": 100,
57
+ "interval": "10m",
58
+ "fill": 3,
59
+ "linewidth": 3,
60
+ "timezone": "browser",
61
+ "spyable": true,
62
+ "zoomlinks": true,
63
+ "bars": true,
64
+ "stack": true,
65
+ "points": false,
66
+ "lines": false,
67
+ "legend": true,
68
+ "x-axis": true,
69
+ "y-axis": true,
70
+ "percentage": false,
71
+ "interactive": true,
72
+ "queries": {
73
+ "mode": "all",
74
+ "ids": [
75
+ 0
76
+ ]
77
+ },
78
+ "title": "Events over time",
79
+ "intervals": [
80
+ "auto",
81
+ "1s",
82
+ "1m",
83
+ "5m",
84
+ "10m",
85
+ "30m",
86
+ "1h",
87
+ "3h",
88
+ "12h",
89
+ "1d",
90
+ "1w",
91
+ "1M",
92
+ "1y"
93
+ ],
94
+ "options": true,
95
+ "tooltip": {
96
+ "value_type": "cumulative",
97
+ "query_as_alias": false
98
+ }
99
+ }
100
+ ],
101
+ "notice": false
102
+ },
103
+ {
104
+ "title": "Events",
105
+ "height": "350px",
106
+ "editable": true,
107
+ "collapse": false,
108
+ "collapsable": true,
109
+ "panels": [
110
+ {
111
+ "title": "All events",
112
+ "error": false,
113
+ "span": 12,
114
+ "editable": true,
115
+ "group": [
116
+ "default"
117
+ ],
118
+ "type": "table",
119
+ "size": 100,
120
+ "pages": 5,
121
+ "offset": 0,
122
+ "sort": [
123
+ "@timestamp",
124
+ "desc"
125
+ ],
126
+ "style": {
127
+ "font-size": "9pt"
128
+ },
129
+ "overflow": "min-height",
130
+ "fields": [],
131
+ "localTime": true,
132
+ "timeField": "@timestamp",
133
+ "highlight": [],
134
+ "sortable": true,
135
+ "header": true,
136
+ "paging": true,
137
+ "spyable": true,
138
+ "queries": {
139
+ "mode": "all",
140
+ "ids": [
141
+ 0
142
+ ]
143
+ },
144
+ "field_list": true,
145
+ "status": "Stable",
146
+ "trimFactor": 300,
147
+ "normTimes": true
148
+ }
149
+ ],
150
+ "notice": false
151
+ }
152
+ ],
153
+ "editable": true,
154
+ "failover": false,
155
+ "index": {
156
+ "interval": "day",
157
+ "pattern": "[logstash-]YYYY.MM.DD",
158
+ "default": "NO_TIME_FILTER_OR_INDEX_PATTERN_NOT_MATCHED"
159
+ },
160
+ "style": "{{ARGS.style || 'dark'}}",
161
+ "panel_hints": true,
162
+ "pulldowns": [
163
+ {
164
+ "type": "query",
165
+ "collapse": false,
166
+ "notice": false,
167
+ "query": "*",
168
+ "pinned": true,
169
+ "history": [],
170
+ "remember": 10
171
+ },
172
+ {
173
+ "type": "filtering",
174
+ "collapse": true,
175
+ "notice": false
176
+ }
177
+ ],
178
+ "nav": [
179
+ {
180
+ "type": "timepicker",
181
+ "collapse": false,
182
+ "notice": false,
183
+ "status": "Stable",
184
+ "time_options": [
185
+ "5m",
186
+ "15m",
187
+ "1h",
188
+ "6h",
189
+ "12h",
190
+ "24h",
191
+ "2d",
192
+ "7d",
193
+ "30d"
194
+ ],
195
+ "refresh_intervals": [
196
+ "5s",
197
+ "10s",
198
+ "30s",
199
+ "1m",
200
+ "5m",
201
+ "15m",
202
+ "30m",
203
+ "1h",
204
+ "2h",
205
+ "1d"
206
+ ],
207
+ "timefield": "@timestamp",
208
+ "now": true,
209
+ "filter_id": 0
210
+ }
211
+ ],
212
+ "loader": {
213
+ "save_gist": false,
214
+ "save_elasticsearch": true,
215
+ "save_local": true,
216
+ "save_default": true,
217
+ "save_temp": true,
218
+ "save_temp_ttl_enable": true,
219
+ "save_temp_ttl": "30d",
220
+ "load_gist": true,
221
+ "load_elasticsearch": true,
222
+ "load_elasticsearch_size": 20,
223
+ "load_local": true,
224
+ "hide": false
225
+ },
226
+ "refresh": false
227
+ }
@@ -0,0 +1,161 @@
1
+ {
2
+ "title": "A few notes",
3
+ "services": {
4
+ "query": {
5
+ "list": {
6
+ "0": {
7
+ "query": "*",
8
+ "alias": "",
9
+ "color": "#7EB26D",
10
+ "id": 0,
11
+ "pin": false,
12
+ "type": "lucene"
13
+ }
14
+ },
15
+ "ids": [
16
+ 0
17
+ ]
18
+ },
19
+ "filter": {
20
+ "list": {},
21
+ "ids": []
22
+ }
23
+ },
24
+ "rows": [
25
+ {
26
+ "title": "Graph",
27
+ "height": "250px",
28
+ "editable": true,
29
+ "collapse": false,
30
+ "collapsable": true,
31
+ "panels": [
32
+ {
33
+ "error": false,
34
+ "span": 3,
35
+ "editable": true,
36
+ "group": [
37
+ "default"
38
+ ],
39
+ "type": "text",
40
+ "status": "Stable",
41
+ "mode": "markdown",
42
+ "content": "See the small Filters bar above this? Click it to expand the filters row. Right now there are none, but if you were to add a Table panel, you could click on event fields to drill down and add some. Or if you had timestamped data and used a time picker, your time filter would appear there",
43
+ "style": {},
44
+ "title": "Filtering"
45
+ },
46
+ {
47
+ "error": false,
48
+ "span": 9,
49
+ "editable": true,
50
+ "group": [
51
+ "default"
52
+ ],
53
+ "type": "text",
54
+ "status": "Stable",
55
+ "mode": "markdown",
56
+ "content": "### Start here\nThis dashboard doesn't run any queries, but it's the best I can do without knowing much about your data!\n\n##### Kibana is currently configured to point at the special Elasticsearch *_all* index. You can change that by clicking on the cog icon in the title bar of this dashboard\nIf you have several indices and a lot of data, you should probably do that before you add any new panels. You can also add rows from that dialog. You can edit individual panels by click on the link that appears in their top right when you mouse over them",
57
+ "style": {},
58
+ "title": "Welcome!"
59
+ }
60
+ ],
61
+ "notice": false
62
+ },
63
+ {
64
+ "title": "Table",
65
+ "height": "650px",
66
+ "editable": true,
67
+ "collapse": false,
68
+ "collapsable": true,
69
+ "panels": [
70
+ {
71
+ "error": false,
72
+ "span": 12,
73
+ "editable": true,
74
+ "group": [
75
+ "default"
76
+ ],
77
+ "type": "text",
78
+ "status": "Stable",
79
+ "mode": "markdown",
80
+ "content": "## A good place for a table\nThis is a good place for a table panel. Table panels present your data in a tabular format and allow you pick the fields you want to see, sort on them, and drill down.",
81
+ "style": {},
82
+ "title": "Put a table here maybe?"
83
+ }
84
+ ],
85
+ "notice": false
86
+ }
87
+ ],
88
+ "editable": true,
89
+ "index": {
90
+ "interval": "none",
91
+ "pattern": "[logstash-]YYYY.MM.DD",
92
+ "default": "_all",
93
+ "warm_fields": false
94
+ },
95
+ "style": "dark",
96
+ "failover": false,
97
+ "panel_hints": true,
98
+ "loader": {
99
+ "save_gist": false,
100
+ "save_elasticsearch": true,
101
+ "save_local": true,
102
+ "save_default": true,
103
+ "save_temp": true,
104
+ "save_temp_ttl_enable": true,
105
+ "save_temp_ttl": "30d",
106
+ "load_gist": true,
107
+ "load_elasticsearch": true,
108
+ "load_elasticsearch_size": 20,
109
+ "load_local": true,
110
+ "hide": false
111
+ },
112
+ "pulldowns": [
113
+ {
114
+ "type": "query",
115
+ "collapse": false,
116
+ "notice": false,
117
+ "query": "*",
118
+ "pinned": true,
119
+ "history": [],
120
+ "remember": 10
121
+ },
122
+ {
123
+ "type": "filtering",
124
+ "collapse": true,
125
+ "notice": false
126
+ }
127
+ ],
128
+ "nav": [
129
+ {
130
+ "type": "timepicker",
131
+ "collapse": false,
132
+ "notice": false,
133
+ "status": "Stable",
134
+ "time_options": [
135
+ "5m",
136
+ "15m",
137
+ "1h",
138
+ "6h",
139
+ "12h",
140
+ "24h",
141
+ "2d",
142
+ "7d",
143
+ "30d"
144
+ ],
145
+ "refresh_intervals": [
146
+ "5s",
147
+ "10s",
148
+ "30s",
149
+ "1m",
150
+ "5m",
151
+ "15m",
152
+ "30m",
153
+ "1h",
154
+ "2h",
155
+ "1d"
156
+ ],
157
+ "timefield": "@timestamp"
158
+ }
159
+ ],
160
+ "refresh": false
161
+ }
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3
+ load Gem.bin_path('bundler', 'bundle')
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
3
+ require_relative '../config/boot'
4
+ require 'rails/commands'
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative '../config/boot'
3
+ require 'rake'
4
+ Rake.application.run
@@ -0,0 +1,2 @@
1
+ require ::File.expand_path('../config/environment', __FILE__)
2
+ run Rails.application
@@ -0,0 +1,11 @@
1
+ require File.expand_path('../boot', __FILE__)
2
+ require 'active_model/railtie'
3
+ require 'action_controller/railtie'
4
+ require 'action_view/railtie'
5
+
6
+ Bundler.require(*Rails.groups)
7
+
8
+ module Dummy
9
+ class Application < Rails::Application
10
+ end
11
+ end
@@ -0,0 +1,2 @@
1
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../../Gemfile', __FILE__)
2
+ require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
@@ -0,0 +1,2 @@
1
+ require File.expand_path('../application', __FILE__)
2
+ Rails.application.initialize!
@@ -0,0 +1,7 @@
1
+ Rails.application.configure do
2
+ config.cache_classes = false
3
+ config.consider_all_requests_local = true
4
+ config.eager_load = false
5
+ config.action_controller.perform_caching = false
6
+ config.active_support.deprecation = :log
7
+ end
@@ -0,0 +1,11 @@
1
+ Rails.application.configure do
2
+ config.cache_classes = true
3
+ config.consider_all_requests_local = false
4
+ config.eager_load = true
5
+ config.i18n.fallbacks = true
6
+ config.log_formatter = ::Logger::Formatter.new
7
+ config.log_level = :info
8
+ config.serve_static_assets = false
9
+ config.action_controller.perform_caching = true
10
+ config.active_support.deprecation = :notify
11
+ end