fluentd-ui 0.3.13 → 0.3.14

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of fluentd-ui might be problematic. Click here for more details.

Files changed (287) hide show
  1. data/ChangeLog +9 -0
  2. data/Gemfile.lock +47 -44
  3. data/README.md +4 -4
  4. data/app/assets/javascripts/vue/in_tail_format.js +7 -2
  5. data/app/assets/stylesheets/common.css.scss +16 -0
  6. data/app/controllers/concerns/setting_history_concern.rb +6 -0
  7. data/app/controllers/fluentd/settings_controller.rb +37 -8
  8. data/app/models/fluent_gem.rb +6 -3
  9. data/app/models/fluentd/agent.rb +1 -0
  10. data/app/models/fluentd/agent/common.rb +4 -0
  11. data/app/models/fluentd/agent/fluentd_gem.rb +9 -13
  12. data/app/models/fluentd/agent/local_common.rb +23 -0
  13. data/app/models/fluentd/agent/td_agent.rb +4 -0
  14. data/app/models/fluentd/agent/td_agent/macosx.rb +0 -4
  15. data/app/models/fluentd/agent/td_agent/unix.rb +0 -4
  16. data/app/views/fluentd/settings/edit.html.haml +1 -3
  17. data/app/views/fluentd/settings/histories/show.html.haml +10 -0
  18. data/app/views/fluentd/settings/running_backup/show.html.haml +11 -0
  19. data/app/views/shared/settings/_diff.html.erb +21 -0
  20. data/circle.yml +5 -0
  21. data/config/application.rb +1 -0
  22. data/config/locales/translation_en.yml +7 -0
  23. data/config/locales/translation_ja.yml +7 -0
  24. data/fluentd-ui.gemspec +1 -0
  25. data/lib/fluentd-ui.rb +5 -1
  26. data/lib/fluentd-ui/version.rb +1 -1
  27. data/spec/features/fluentd/setting/histories_spec.rb +23 -1
  28. data/spec/features/fluentd/setting/running_backup_spec.rb +22 -1
  29. data/spec/models/fluentd/agent/local_common_spec.rb +4 -2
  30. data/spec/models/fluentd/agent_spec.rb +1 -48
  31. data/spec/models/plugin_spec.rb +2 -2
  32. data/spec/spec_helper.rb +10 -0
  33. data/spec/support/fluentd_agent_common_behavior.rb +53 -0
  34. data/vendor/assets/javascripts/bower/.gitignore +10 -0
  35. data/vendor/assets/javascripts/bower/vue/.bower.json +4 -4
  36. data/vendor/assets/javascripts/bower/vue/bower.json +17 -0
  37. data/vendor/assets/javascripts/bower/vue/dist/vue.js +329 -198
  38. data/vendor/assets/javascripts/bower/vue/dist/vue.min.js +3 -3
  39. metadata +107 -291
  40. checksums.yaml +0 -7
  41. data/vendor/assets/javascripts/bower/codemirror/AUTHORS +0 -423
  42. data/vendor/assets/javascripts/bower/codemirror/CONTRIBUTING.md +0 -76
  43. data/vendor/assets/javascripts/bower/codemirror/LICENSE +0 -19
  44. data/vendor/assets/javascripts/bower/codemirror/README.md +0 -11
  45. data/vendor/assets/javascripts/bower/codemirror/addon/comment/comment.js +0 -183
  46. data/vendor/assets/javascripts/bower/codemirror/addon/comment/continuecomment.js +0 -85
  47. data/vendor/assets/javascripts/bower/codemirror/addon/dialog/dialog.css +0 -32
  48. data/vendor/assets/javascripts/bower/codemirror/addon/dialog/dialog.js +0 -155
  49. data/vendor/assets/javascripts/bower/codemirror/addon/display/fullscreen.css +0 -6
  50. data/vendor/assets/javascripts/bower/codemirror/addon/display/fullscreen.js +0 -41
  51. data/vendor/assets/javascripts/bower/codemirror/addon/display/panel.js +0 -94
  52. data/vendor/assets/javascripts/bower/codemirror/addon/display/placeholder.js +0 -58
  53. data/vendor/assets/javascripts/bower/codemirror/addon/display/rulers.js +0 -64
  54. data/vendor/assets/javascripts/bower/codemirror/addon/edit/closebrackets.js +0 -159
  55. data/vendor/assets/javascripts/bower/codemirror/addon/edit/closetag.js +0 -159
  56. data/vendor/assets/javascripts/bower/codemirror/addon/edit/continuelist.js +0 -51
  57. data/vendor/assets/javascripts/bower/codemirror/addon/edit/matchbrackets.js +0 -120
  58. data/vendor/assets/javascripts/bower/codemirror/addon/edit/matchtags.js +0 -66
  59. data/vendor/assets/javascripts/bower/codemirror/addon/edit/trailingspace.js +0 -27
  60. data/vendor/assets/javascripts/bower/codemirror/addon/fold/brace-fold.js +0 -105
  61. data/vendor/assets/javascripts/bower/codemirror/addon/fold/comment-fold.js +0 -57
  62. data/vendor/assets/javascripts/bower/codemirror/addon/fold/foldcode.js +0 -145
  63. data/vendor/assets/javascripts/bower/codemirror/addon/fold/foldgutter.css +0 -20
  64. data/vendor/assets/javascripts/bower/codemirror/addon/fold/foldgutter.js +0 -134
  65. data/vendor/assets/javascripts/bower/codemirror/addon/fold/indent-fold.js +0 -44
  66. data/vendor/assets/javascripts/bower/codemirror/addon/fold/markdown-fold.js +0 -49
  67. data/vendor/assets/javascripts/bower/codemirror/addon/fold/xml-fold.js +0 -182
  68. data/vendor/assets/javascripts/bower/codemirror/addon/hint/anyword-hint.js +0 -41
  69. data/vendor/assets/javascripts/bower/codemirror/addon/hint/css-hint.js +0 -56
  70. data/vendor/assets/javascripts/bower/codemirror/addon/hint/html-hint.js +0 -348
  71. data/vendor/assets/javascripts/bower/codemirror/addon/hint/javascript-hint.js +0 -146
  72. data/vendor/assets/javascripts/bower/codemirror/addon/hint/show-hint.css +0 -38
  73. data/vendor/assets/javascripts/bower/codemirror/addon/hint/show-hint.js +0 -389
  74. data/vendor/assets/javascripts/bower/codemirror/addon/hint/sql-hint.js +0 -197
  75. data/vendor/assets/javascripts/bower/codemirror/addon/hint/xml-hint.js +0 -110
  76. data/vendor/assets/javascripts/bower/codemirror/addon/lint/coffeescript-lint.js +0 -41
  77. data/vendor/assets/javascripts/bower/codemirror/addon/lint/css-lint.js +0 -35
  78. data/vendor/assets/javascripts/bower/codemirror/addon/lint/javascript-lint.js +0 -136
  79. data/vendor/assets/javascripts/bower/codemirror/addon/lint/json-lint.js +0 -31
  80. data/vendor/assets/javascripts/bower/codemirror/addon/lint/lint.css +0 -73
  81. data/vendor/assets/javascripts/bower/codemirror/addon/lint/lint.js +0 -204
  82. data/vendor/assets/javascripts/bower/codemirror/addon/lint/yaml-lint.js +0 -28
  83. data/vendor/assets/javascripts/bower/codemirror/addon/merge/merge.css +0 -112
  84. data/vendor/assets/javascripts/bower/codemirror/addon/merge/merge.js +0 -643
  85. data/vendor/assets/javascripts/bower/codemirror/addon/mode/loadmode.js +0 -64
  86. data/vendor/assets/javascripts/bower/codemirror/addon/mode/multiplex.js +0 -118
  87. data/vendor/assets/javascripts/bower/codemirror/addon/mode/multiplex_test.js +0 -33
  88. data/vendor/assets/javascripts/bower/codemirror/addon/mode/overlay.js +0 -85
  89. data/vendor/assets/javascripts/bower/codemirror/addon/mode/simple.js +0 -213
  90. data/vendor/assets/javascripts/bower/codemirror/addon/runmode/colorize.js +0 -40
  91. data/vendor/assets/javascripts/bower/codemirror/addon/runmode/runmode-standalone.js +0 -157
  92. data/vendor/assets/javascripts/bower/codemirror/addon/runmode/runmode.js +0 -72
  93. data/vendor/assets/javascripts/bower/codemirror/addon/runmode/runmode.node.js +0 -120
  94. data/vendor/assets/javascripts/bower/codemirror/addon/scroll/annotatescrollbar.js +0 -76
  95. data/vendor/assets/javascripts/bower/codemirror/addon/scroll/scrollpastend.js +0 -46
  96. data/vendor/assets/javascripts/bower/codemirror/addon/scroll/simplescrollbars.css +0 -66
  97. data/vendor/assets/javascripts/bower/codemirror/addon/scroll/simplescrollbars.js +0 -139
  98. data/vendor/assets/javascripts/bower/codemirror/addon/search/match-highlighter.js +0 -128
  99. data/vendor/assets/javascripts/bower/codemirror/addon/search/matchesonscrollbar.css +0 -8
  100. data/vendor/assets/javascripts/bower/codemirror/addon/search/matchesonscrollbar.js +0 -90
  101. data/vendor/assets/javascripts/bower/codemirror/addon/search/search.js +0 -164
  102. data/vendor/assets/javascripts/bower/codemirror/addon/search/searchcursor.js +0 -189
  103. data/vendor/assets/javascripts/bower/codemirror/addon/selection/active-line.js +0 -71
  104. data/vendor/assets/javascripts/bower/codemirror/addon/selection/mark-selection.js +0 -118
  105. data/vendor/assets/javascripts/bower/codemirror/addon/tern/tern.css +0 -86
  106. data/vendor/assets/javascripts/bower/codemirror/addon/tern/tern.js +0 -670
  107. data/vendor/assets/javascripts/bower/codemirror/addon/tern/worker.js +0 -44
  108. data/vendor/assets/javascripts/bower/codemirror/addon/wrap/hardwrap.js +0 -139
  109. data/vendor/assets/javascripts/bower/codemirror/keymap/emacs.js +0 -411
  110. data/vendor/assets/javascripts/bower/codemirror/keymap/sublime.js +0 -540
  111. data/vendor/assets/javascripts/bower/codemirror/keymap/vim.js +0 -4901
  112. data/vendor/assets/javascripts/bower/codemirror/mode/apl/apl.js +0 -175
  113. data/vendor/assets/javascripts/bower/codemirror/mode/asterisk/asterisk.js +0 -198
  114. data/vendor/assets/javascripts/bower/codemirror/mode/clike/clike.js +0 -489
  115. data/vendor/assets/javascripts/bower/codemirror/mode/clike/scala.html +0 -767
  116. data/vendor/assets/javascripts/bower/codemirror/mode/clojure/clojure.js +0 -243
  117. data/vendor/assets/javascripts/bower/codemirror/mode/cobol/cobol.js +0 -255
  118. data/vendor/assets/javascripts/bower/codemirror/mode/coffeescript/coffeescript.js +0 -369
  119. data/vendor/assets/javascripts/bower/codemirror/mode/commonlisp/commonlisp.js +0 -122
  120. data/vendor/assets/javascripts/bower/codemirror/mode/css/css.js +0 -717
  121. data/vendor/assets/javascripts/bower/codemirror/mode/css/less.html +0 -152
  122. data/vendor/assets/javascripts/bower/codemirror/mode/css/less_test.js +0 -51
  123. data/vendor/assets/javascripts/bower/codemirror/mode/css/scss.html +0 -157
  124. data/vendor/assets/javascripts/bower/codemirror/mode/css/scss_test.js +0 -110
  125. data/vendor/assets/javascripts/bower/codemirror/mode/css/test.js +0 -135
  126. data/vendor/assets/javascripts/bower/codemirror/mode/cypher/cypher.js +0 -146
  127. data/vendor/assets/javascripts/bower/codemirror/mode/d/d.js +0 -218
  128. data/vendor/assets/javascripts/bower/codemirror/mode/dart/dart.js +0 -50
  129. data/vendor/assets/javascripts/bower/codemirror/mode/diff/diff.js +0 -47
  130. data/vendor/assets/javascripts/bower/codemirror/mode/django/django.js +0 -67
  131. data/vendor/assets/javascripts/bower/codemirror/mode/dockerfile/dockerfile.js +0 -76
  132. data/vendor/assets/javascripts/bower/codemirror/mode/dtd/dtd.js +0 -142
  133. data/vendor/assets/javascripts/bower/codemirror/mode/dylan/dylan.js +0 -299
  134. data/vendor/assets/javascripts/bower/codemirror/mode/ebnf/ebnf.js +0 -195
  135. data/vendor/assets/javascripts/bower/codemirror/mode/ecl/ecl.js +0 -207
  136. data/vendor/assets/javascripts/bower/codemirror/mode/eiffel/eiffel.js +0 -162
  137. data/vendor/assets/javascripts/bower/codemirror/mode/erlang/erlang.js +0 -622
  138. data/vendor/assets/javascripts/bower/codemirror/mode/fortran/fortran.js +0 -188
  139. data/vendor/assets/javascripts/bower/codemirror/mode/gas/gas.js +0 -345
  140. data/vendor/assets/javascripts/bower/codemirror/mode/gfm/gfm.js +0 -123
  141. data/vendor/assets/javascripts/bower/codemirror/mode/gfm/test.js +0 -213
  142. data/vendor/assets/javascripts/bower/codemirror/mode/gherkin/gherkin.js +0 -178
  143. data/vendor/assets/javascripts/bower/codemirror/mode/go/go.js +0 -184
  144. data/vendor/assets/javascripts/bower/codemirror/mode/groovy/groovy.js +0 -226
  145. data/vendor/assets/javascripts/bower/codemirror/mode/haml/haml.js +0 -159
  146. data/vendor/assets/javascripts/bower/codemirror/mode/haml/test.js +0 -97
  147. data/vendor/assets/javascripts/bower/codemirror/mode/haskell/haskell.js +0 -267
  148. data/vendor/assets/javascripts/bower/codemirror/mode/haxe/haxe.js +0 -518
  149. data/vendor/assets/javascripts/bower/codemirror/mode/htmlembedded/htmlembedded.js +0 -86
  150. data/vendor/assets/javascripts/bower/codemirror/mode/htmlmixed/htmlmixed.js +0 -121
  151. data/vendor/assets/javascripts/bower/codemirror/mode/http/http.js +0 -113
  152. data/vendor/assets/javascripts/bower/codemirror/mode/idl/idl.js +0 -290
  153. data/vendor/assets/javascripts/bower/codemirror/mode/jade/jade.js +0 -590
  154. data/vendor/assets/javascripts/bower/codemirror/mode/javascript/javascript.js +0 -686
  155. data/vendor/assets/javascripts/bower/codemirror/mode/javascript/json-ld.html +0 -72
  156. data/vendor/assets/javascripts/bower/codemirror/mode/javascript/test.js +0 -200
  157. data/vendor/assets/javascripts/bower/codemirror/mode/javascript/typescript.html +0 -61
  158. data/vendor/assets/javascripts/bower/codemirror/mode/jinja2/jinja2.js +0 -142
  159. data/vendor/assets/javascripts/bower/codemirror/mode/julia/julia.js +0 -301
  160. data/vendor/assets/javascripts/bower/codemirror/mode/kotlin/kotlin.js +0 -280
  161. data/vendor/assets/javascripts/bower/codemirror/mode/livescript/livescript.js +0 -280
  162. data/vendor/assets/javascripts/bower/codemirror/mode/lua/lua.js +0 -159
  163. data/vendor/assets/javascripts/bower/codemirror/mode/markdown/markdown.js +0 -765
  164. data/vendor/assets/javascripts/bower/codemirror/mode/markdown/test.js +0 -754
  165. data/vendor/assets/javascripts/bower/codemirror/mode/meta.js +0 -165
  166. data/vendor/assets/javascripts/bower/codemirror/mode/mirc/mirc.js +0 -193
  167. data/vendor/assets/javascripts/bower/codemirror/mode/mllike/mllike.js +0 -205
  168. data/vendor/assets/javascripts/bower/codemirror/mode/modelica/modelica.js +0 -245
  169. data/vendor/assets/javascripts/bower/codemirror/mode/nginx/nginx.js +0 -178
  170. data/vendor/assets/javascripts/bower/codemirror/mode/ntriples/ntriples.js +0 -186
  171. data/vendor/assets/javascripts/bower/codemirror/mode/octave/octave.js +0 -135
  172. data/vendor/assets/javascripts/bower/codemirror/mode/pascal/pascal.js +0 -109
  173. data/vendor/assets/javascripts/bower/codemirror/mode/pegjs/pegjs.js +0 -114
  174. data/vendor/assets/javascripts/bower/codemirror/mode/perl/perl.js +0 -832
  175. data/vendor/assets/javascripts/bower/codemirror/mode/php/php.js +0 -226
  176. data/vendor/assets/javascripts/bower/codemirror/mode/php/test.js +0 -154
  177. data/vendor/assets/javascripts/bower/codemirror/mode/pig/pig.js +0 -188
  178. data/vendor/assets/javascripts/bower/codemirror/mode/properties/properties.js +0 -78
  179. data/vendor/assets/javascripts/bower/codemirror/mode/puppet/puppet.js +0 -220
  180. data/vendor/assets/javascripts/bower/codemirror/mode/python/python.js +0 -359
  181. data/vendor/assets/javascripts/bower/codemirror/mode/q/q.js +0 -139
  182. data/vendor/assets/javascripts/bower/codemirror/mode/r/r.js +0 -162
  183. data/vendor/assets/javascripts/bower/codemirror/mode/rpm/rpm.js +0 -101
  184. data/vendor/assets/javascripts/bower/codemirror/mode/rst/rst.js +0 -557
  185. data/vendor/assets/javascripts/bower/codemirror/mode/ruby/ruby.js +0 -285
  186. data/vendor/assets/javascripts/bower/codemirror/mode/ruby/test.js +0 -14
  187. data/vendor/assets/javascripts/bower/codemirror/mode/rust/rust.js +0 -451
  188. data/vendor/assets/javascripts/bower/codemirror/mode/sass/sass.js +0 -327
  189. data/vendor/assets/javascripts/bower/codemirror/mode/scheme/scheme.js +0 -248
  190. data/vendor/assets/javascripts/bower/codemirror/mode/shell/shell.js +0 -139
  191. data/vendor/assets/javascripts/bower/codemirror/mode/shell/test.js +0 -58
  192. data/vendor/assets/javascripts/bower/codemirror/mode/sieve/sieve.js +0 -193
  193. data/vendor/assets/javascripts/bower/codemirror/mode/slim/slim.js +0 -575
  194. data/vendor/assets/javascripts/bower/codemirror/mode/slim/test.js +0 -96
  195. data/vendor/assets/javascripts/bower/codemirror/mode/smalltalk/smalltalk.js +0 -168
  196. data/vendor/assets/javascripts/bower/codemirror/mode/smarty/smarty.js +0 -221
  197. data/vendor/assets/javascripts/bower/codemirror/mode/smartymixed/smartymixed.js +0 -197
  198. data/vendor/assets/javascripts/bower/codemirror/mode/solr/solr.js +0 -104
  199. data/vendor/assets/javascripts/bower/codemirror/mode/soy/soy.js +0 -198
  200. data/vendor/assets/javascripts/bower/codemirror/mode/sparql/sparql.js +0 -174
  201. data/vendor/assets/javascripts/bower/codemirror/mode/spreadsheet/spreadsheet.js +0 -109
  202. data/vendor/assets/javascripts/bower/codemirror/mode/sql/sql.js +0 -391
  203. data/vendor/assets/javascripts/bower/codemirror/mode/stex/stex.js +0 -251
  204. data/vendor/assets/javascripts/bower/codemirror/mode/stex/test.js +0 -123
  205. data/vendor/assets/javascripts/bower/codemirror/mode/tcl/tcl.js +0 -147
  206. data/vendor/assets/javascripts/bower/codemirror/mode/textile/test.js +0 -417
  207. data/vendor/assets/javascripts/bower/codemirror/mode/textile/textile.js +0 -469
  208. data/vendor/assets/javascripts/bower/codemirror/mode/tiddlywiki/tiddlywiki.css +0 -14
  209. data/vendor/assets/javascripts/bower/codemirror/mode/tiddlywiki/tiddlywiki.js +0 -369
  210. data/vendor/assets/javascripts/bower/codemirror/mode/tiki/tiki.css +0 -26
  211. data/vendor/assets/javascripts/bower/codemirror/mode/tiki/tiki.js +0 -323
  212. data/vendor/assets/javascripts/bower/codemirror/mode/toml/toml.js +0 -88
  213. data/vendor/assets/javascripts/bower/codemirror/mode/tornado/tornado.js +0 -68
  214. data/vendor/assets/javascripts/bower/codemirror/mode/turtle/turtle.js +0 -162
  215. data/vendor/assets/javascripts/bower/codemirror/mode/vb/vb.js +0 -274
  216. data/vendor/assets/javascripts/bower/codemirror/mode/vbscript/vbscript.js +0 -350
  217. data/vendor/assets/javascripts/bower/codemirror/mode/velocity/velocity.js +0 -201
  218. data/vendor/assets/javascripts/bower/codemirror/mode/verilog/test.js +0 -273
  219. data/vendor/assets/javascripts/bower/codemirror/mode/verilog/verilog.js +0 -364
  220. data/vendor/assets/javascripts/bower/codemirror/mode/xml/test.js +0 -51
  221. data/vendor/assets/javascripts/bower/codemirror/mode/xml/xml.js +0 -384
  222. data/vendor/assets/javascripts/bower/codemirror/mode/xquery/test.js +0 -67
  223. data/vendor/assets/javascripts/bower/codemirror/mode/xquery/xquery.js +0 -447
  224. data/vendor/assets/javascripts/bower/codemirror/mode/yaml/yaml.js +0 -117
  225. data/vendor/assets/javascripts/bower/codemirror/mode/z80/z80.js +0 -100
  226. data/vendor/assets/javascripts/bower/vue/LICENSE +0 -21
  227. data/vendor/assets/javascripts/bower/vue/src/api/child.js +0 -53
  228. data/vendor/assets/javascripts/bower/vue/src/api/data.js +0 -161
  229. data/vendor/assets/javascripts/bower/vue/src/api/dom.js +0 -211
  230. data/vendor/assets/javascripts/bower/vue/src/api/events.js +0 -176
  231. data/vendor/assets/javascripts/bower/vue/src/api/global.js +0 -146
  232. data/vendor/assets/javascripts/bower/vue/src/api/lifecycle.js +0 -72
  233. data/vendor/assets/javascripts/bower/vue/src/batcher.js +0 -65
  234. data/vendor/assets/javascripts/bower/vue/src/cache.js +0 -112
  235. data/vendor/assets/javascripts/bower/vue/src/compiler/compile.js +0 -549
  236. data/vendor/assets/javascripts/bower/vue/src/compiler/transclude.js +0 -146
  237. data/vendor/assets/javascripts/bower/vue/src/config.js +0 -79
  238. data/vendor/assets/javascripts/bower/vue/src/directive.js +0 -219
  239. data/vendor/assets/javascripts/bower/vue/src/directives/attr.js +0 -32
  240. data/vendor/assets/javascripts/bower/vue/src/directives/class.js +0 -18
  241. data/vendor/assets/javascripts/bower/vue/src/directives/cloak.js +0 -12
  242. data/vendor/assets/javascripts/bower/vue/src/directives/component.js +0 -196
  243. data/vendor/assets/javascripts/bower/vue/src/directives/el.js +0 -13
  244. data/vendor/assets/javascripts/bower/vue/src/directives/html.js +0 -38
  245. data/vendor/assets/javascripts/bower/vue/src/directives/if.js +0 -87
  246. data/vendor/assets/javascripts/bower/vue/src/directives/index.js +0 -22
  247. data/vendor/assets/javascripts/bower/vue/src/directives/model/checkbox.js +0 -25
  248. data/vendor/assets/javascripts/bower/vue/src/directives/model/default.js +0 -123
  249. data/vendor/assets/javascripts/bower/vue/src/directives/model/index.js +0 -56
  250. data/vendor/assets/javascripts/bower/vue/src/directives/model/radio.js +0 -26
  251. data/vendor/assets/javascripts/bower/vue/src/directives/model/select.js +0 -166
  252. data/vendor/assets/javascripts/bower/vue/src/directives/on.js +0 -59
  253. data/vendor/assets/javascripts/bower/vue/src/directives/partial.js +0 -44
  254. data/vendor/assets/javascripts/bower/vue/src/directives/ref.js +0 -24
  255. data/vendor/assets/javascripts/bower/vue/src/directives/repeat.js +0 -503
  256. data/vendor/assets/javascripts/bower/vue/src/directives/show.js +0 -8
  257. data/vendor/assets/javascripts/bower/vue/src/directives/style.js +0 -58
  258. data/vendor/assets/javascripts/bower/vue/src/directives/text.js +0 -15
  259. data/vendor/assets/javascripts/bower/vue/src/directives/transition.js +0 -12
  260. data/vendor/assets/javascripts/bower/vue/src/directives/with.js +0 -47
  261. data/vendor/assets/javascripts/bower/vue/src/filters/array-filters.js +0 -87
  262. data/vendor/assets/javascripts/bower/vue/src/filters/index.js +0 -135
  263. data/vendor/assets/javascripts/bower/vue/src/instance/compile.js +0 -179
  264. data/vendor/assets/javascripts/bower/vue/src/instance/events.js +0 -122
  265. data/vendor/assets/javascripts/bower/vue/src/instance/init.js +0 -76
  266. data/vendor/assets/javascripts/bower/vue/src/instance/scope.js +0 -217
  267. data/vendor/assets/javascripts/bower/vue/src/observer/array.js +0 -90
  268. data/vendor/assets/javascripts/bower/vue/src/observer/dep.js +0 -50
  269. data/vendor/assets/javascripts/bower/vue/src/observer/index.js +0 -235
  270. data/vendor/assets/javascripts/bower/vue/src/observer/object.js +0 -66
  271. data/vendor/assets/javascripts/bower/vue/src/parsers/directive.js +0 -159
  272. data/vendor/assets/javascripts/bower/vue/src/parsers/expression.js +0 -226
  273. data/vendor/assets/javascripts/bower/vue/src/parsers/path.js +0 -300
  274. data/vendor/assets/javascripts/bower/vue/src/parsers/template.js +0 -248
  275. data/vendor/assets/javascripts/bower/vue/src/parsers/text.js +0 -178
  276. data/vendor/assets/javascripts/bower/vue/src/transition/css.js +0 -189
  277. data/vendor/assets/javascripts/bower/vue/src/transition/index.js +0 -151
  278. data/vendor/assets/javascripts/bower/vue/src/transition/js.js +0 -43
  279. data/vendor/assets/javascripts/bower/vue/src/util/debug.js +0 -50
  280. data/vendor/assets/javascripts/bower/vue/src/util/dom.js +0 -197
  281. data/vendor/assets/javascripts/bower/vue/src/util/env.js +0 -74
  282. data/vendor/assets/javascripts/bower/vue/src/util/filter.js +0 -72
  283. data/vendor/assets/javascripts/bower/vue/src/util/index.js +0 -8
  284. data/vendor/assets/javascripts/bower/vue/src/util/lang.js +0 -175
  285. data/vendor/assets/javascripts/bower/vue/src/util/merge-option.js +0 -255
  286. data/vendor/assets/javascripts/bower/vue/src/vue.js +0 -84
  287. data/vendor/assets/javascripts/bower/vue/src/watcher.js +0 -240
data/ChangeLog CHANGED
@@ -1,3 +1,12 @@
1
+ Release 0.3.14 - 2015/02/04
2
+ * [maintenance] #150, #151 minor fix in README.md.
3
+ * [maintenance] #149 Make circle-ci result stable.
4
+ * [maintenance] #147 Update gems.
5
+ * [maintenance] #144 Ignore useless bower files
6
+ * [fixed] #146 Fix to enable to too fast input in regex text box (#145 issue).
7
+ * [improve] #152 Add dry-run to config edit.
8
+ * [improve] #153 Show diff between current config and backup files.
9
+
1
10
  Release 0.3.13 - 2015/01/28
2
11
  * [improve] #143 Use CodeMirror for setting edit
3
12
 
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fluentd-ui (0.3.13)
4
+ fluentd-ui (0.3.14)
5
5
  addressable
6
6
  bundler
7
+ diff-lcs
7
8
  draper (~> 1.3)
8
9
  fluentd (~> 0.10.56)
9
10
  font-awesome-rails
@@ -24,27 +25,27 @@ PATH
24
25
  GEM
25
26
  remote: https://rubygems.org/
26
27
  specs:
27
- actionmailer (4.1.8)
28
- actionpack (= 4.1.8)
29
- actionview (= 4.1.8)
28
+ actionmailer (4.1.9)
29
+ actionpack (= 4.1.9)
30
+ actionview (= 4.1.9)
30
31
  mail (~> 2.5, >= 2.5.4)
31
- actionpack (4.1.8)
32
- actionview (= 4.1.8)
33
- activesupport (= 4.1.8)
32
+ actionpack (4.1.9)
33
+ actionview (= 4.1.9)
34
+ activesupport (= 4.1.9)
34
35
  rack (~> 1.5.2)
35
36
  rack-test (~> 0.6.2)
36
- actionview (4.1.8)
37
- activesupport (= 4.1.8)
37
+ actionview (4.1.9)
38
+ activesupport (= 4.1.9)
38
39
  builder (~> 3.1)
39
40
  erubis (~> 2.7.0)
40
- activemodel (4.1.8)
41
- activesupport (= 4.1.8)
41
+ activemodel (4.1.9)
42
+ activesupport (= 4.1.9)
42
43
  builder (~> 3.1)
43
- activerecord (4.1.8)
44
- activemodel (= 4.1.8)
45
- activesupport (= 4.1.8)
44
+ activerecord (4.1.9)
45
+ activemodel (= 4.1.9)
46
+ activesupport (= 4.1.9)
46
47
  arel (~> 5.0.0)
47
- activesupport (4.1.8)
48
+ activesupport (4.1.9)
48
49
  i18n (~> 0.6, >= 0.6.9)
49
50
  json (~> 1.7, >= 1.7.7)
50
51
  minitest (~> 5.1)
@@ -59,7 +60,7 @@ GEM
59
60
  rack (>= 1.0.0)
60
61
  rack-test (>= 0.5.4)
61
62
  xpath (~> 2.0)
62
- capybara-screenshot (1.0.3)
63
+ capybara-screenshot (1.0.4)
63
64
  capybara (>= 1.0, < 3)
64
65
  colored
65
66
  launchy
@@ -68,12 +69,12 @@ GEM
68
69
  cliver (0.3.2)
69
70
  coderay (1.1.0)
70
71
  colored (1.2)
71
- cool.io (1.2.4)
72
+ cool.io (1.3.0)
72
73
  crack (0.4.2)
73
74
  safe_yaml (~> 1.0.0)
74
75
  database_cleaner (1.2.0)
75
76
  diff-lcs (1.2.5)
76
- domain_name (0.5.22)
77
+ domain_name (0.5.23)
77
78
  unf (>= 0.0.5, < 1.0.0)
78
79
  draper (1.4.0)
79
80
  actionpack (>= 3.0)
@@ -86,7 +87,7 @@ GEM
86
87
  factory_girl_rails (4.5.0)
87
88
  factory_girl (~> 4.5.0)
88
89
  railties (>= 3.0.0)
89
- fluentd (0.10.57)
90
+ fluentd (0.10.59)
90
91
  cool.io (>= 1.1.1, < 2.0.0, != 1.2.0)
91
92
  http_parser.rb (>= 0.5.1, < 0.7.0)
92
93
  json (>= 1.4.3)
@@ -95,7 +96,7 @@ GEM
95
96
  tzinfo (>= 1.0.0)
96
97
  tzinfo-data (>= 1.0.0)
97
98
  yajl-ruby (~> 1.0)
98
- font-awesome-rails (4.2.0.0)
99
+ font-awesome-rails (4.3.0.0)
99
100
  railties (>= 3.2, < 5.0)
100
101
  haml (4.0.6)
101
102
  tilt
@@ -109,17 +110,17 @@ GEM
109
110
  domain_name (~> 0.5)
110
111
  http_parser.rb (0.6.0)
111
112
  httpclient (2.4.0)
112
- i18n (0.6.11)
113
+ i18n (0.7.0)
113
114
  i18n_generators (1.2.1)
114
115
  mechanize
115
116
  rails (>= 3.0.0)
116
- jbuilder (2.2.5)
117
+ jbuilder (2.2.6)
117
118
  activesupport (>= 3.0.0, < 5)
118
119
  multi_json (~> 1.2)
119
120
  jquery-rails (3.1.2)
120
121
  railties (>= 3.0, < 5.0)
121
122
  thor (>= 0.14, < 2.0)
122
- json (1.8.1)
123
+ json (1.8.2)
123
124
  kramdown (1.5.0)
124
125
  kramdown-haml (0.0.3)
125
126
  haml
@@ -138,13 +139,13 @@ GEM
138
139
  webrobots (>= 0.0.9, < 0.2)
139
140
  method_source (0.8.2)
140
141
  mime-types (2.4.3)
141
- mini_portile (0.6.1)
142
- minitest (5.4.3)
143
- msgpack (0.5.9)
142
+ mini_portile (0.6.2)
143
+ minitest (5.5.1)
144
+ msgpack (0.5.10)
144
145
  multi_json (1.10.1)
145
146
  net-http-digest_auth (1.4)
146
147
  net-http-persistent (2.9.4)
147
- nokogiri (1.6.5)
148
+ nokogiri (1.6.6.2)
148
149
  mini_portile (~> 0.6.0)
149
150
  ntlm-http (0.1.1)
150
151
  poltergeist (1.5.1)
@@ -158,27 +159,27 @@ GEM
158
159
  slop (~> 3.4)
159
160
  pry-rails (0.3.2)
160
161
  pry (>= 0.9.10)
161
- puma (2.10.2)
162
+ puma (2.11.0)
162
163
  rack (>= 1.1, < 2.0)
163
164
  rack (1.5.2)
164
- rack-test (0.6.2)
165
+ rack-test (0.6.3)
165
166
  rack (>= 1.0)
166
- rails (4.1.8)
167
- actionmailer (= 4.1.8)
168
- actionpack (= 4.1.8)
169
- actionview (= 4.1.8)
170
- activemodel (= 4.1.8)
171
- activerecord (= 4.1.8)
172
- activesupport (= 4.1.8)
167
+ rails (4.1.9)
168
+ actionmailer (= 4.1.9)
169
+ actionpack (= 4.1.9)
170
+ actionview (= 4.1.9)
171
+ activemodel (= 4.1.9)
172
+ activerecord (= 4.1.9)
173
+ activesupport (= 4.1.9)
173
174
  bundler (>= 1.3.0, < 2.0)
174
- railties (= 4.1.8)
175
+ railties (= 4.1.9)
175
176
  sprockets-rails (~> 2.0)
176
- railties (4.1.8)
177
- actionpack (= 4.1.8)
178
- activesupport (= 4.1.8)
177
+ railties (4.1.9)
178
+ actionpack (= 4.1.9)
179
+ activesupport (= 4.1.9)
179
180
  rake (>= 0.8.7)
180
181
  thor (>= 0.18.1, < 2.0)
181
- rake (10.4.1)
182
+ rake (10.4.2)
182
183
  request_store (1.1.0)
183
184
  rspec-collection_matchers (1.1.2)
184
185
  rspec-expectations (>= 2.99.0.beta1)
@@ -188,7 +189,7 @@ GEM
188
189
  rspec-its (1.0.1)
189
190
  rspec-core (>= 2.99.0.beta1)
190
191
  rspec-expectations (>= 2.99.0.beta1)
191
- rspec-mocks (2.99.2)
192
+ rspec-mocks (2.99.3)
192
193
  rspec-rails (2.99.0)
193
194
  actionpack (>= 3.0)
194
195
  activemodel (>= 3.0)
@@ -218,7 +219,7 @@ GEM
218
219
  multi_json (~> 1.0)
219
220
  rack (~> 1.0)
220
221
  tilt (~> 1.1, != 1.3.0)
221
- sprockets-rails (2.2.2)
222
+ sprockets-rails (2.2.4)
222
223
  actionpack (>= 3.0)
223
224
  activesupport (>= 3.0)
224
225
  sprockets (>= 2.8, < 4.0)
@@ -240,7 +241,9 @@ GEM
240
241
  addressable (>= 2.3.6)
241
242
  crack (>= 0.3.2)
242
243
  webrobots (0.1.1)
243
- websocket-driver (0.4.0)
244
+ websocket-driver (0.5.1)
245
+ websocket-extensions (>= 0.1.0)
246
+ websocket-extensions (0.1.1)
244
247
  xpath (2.0.0)
245
248
  nokogiri (~> 1.3)
246
249
  yajl-ruby (1.2.1)
data/README.md CHANGED
@@ -6,10 +6,10 @@
6
6
 
7
7
  fluentd-ui is a browser-based [fluentd](http://fluentd.org/) and [td-agent](http://docs.treasuredata.com/articles/td-agent) manager that supports following operations.
8
8
 
9
- * Install, uninstall, and upgrade fluentd plugins
9
+ * Install, uninstall, and upgrade Fluentd plugins
10
10
  * start/stop/restart fluentd process
11
- * Configure fluentd settings such as config file content, pidfile path, etc
12
- * View fluentd log with simple error viewer
11
+ * Configure Fluentd settings such as config file content, pid file path, etc
12
+ * View Fluentd log with simple error viewer
13
13
 
14
14
 
15
15
  # Getting Started
@@ -24,7 +24,7 @@ The default account is username="admin" and password="changeme"
24
24
 
25
25
  ![fluentd-ui](./docs/screenshots/fluentd-ui.gif)
26
26
 
27
- ## TO Ubuntu 14.04 user (installed ruby by apt-get)
27
+ ## To Ubuntu 14.04 user (installed ruby by apt-get)
28
28
 
29
29
  You also need to install these packages:
30
30
 
@@ -120,9 +120,12 @@
120
120
  },
121
121
 
122
122
  preview: function(){
123
+ if(this.previewAjax) {
124
+ this.previewAjax.abort();
125
+ }
123
126
  var self = this;
124
127
  new Promise(function(resolve, reject) {
125
- $.ajax({
128
+ self.previewAjax = $.ajax({
126
129
  method: "POST",
127
130
  url: "/api/regexp_preview",
128
131
  data: {
@@ -137,7 +140,9 @@
137
140
  self.regexpMatches = result.matches;
138
141
  self.updateHighlightedLines();
139
142
  })["catch"](function(error){
140
- console.error(error.stack);
143
+ if(error.stack) {
144
+ console.error(error.stack);
145
+ }
141
146
  });
142
147
  },
143
148
  }
@@ -169,3 +169,19 @@ label {
169
169
  .datetime {
170
170
  white-space: nowrap;
171
171
  }
172
+ .diff {
173
+ .deleted {
174
+ background-color: #fdd;
175
+ }
176
+ .added {
177
+ background-color: #dfd;
178
+ }
179
+ }
180
+
181
+ .frame-corner-radius {
182
+ border: 1px solid #ddd;
183
+ padding:10px 10px;
184
+ border-radius: 3px;
185
+ margin: 10px 0px;
186
+ }
187
+
@@ -8,6 +8,12 @@ module SettingHistoryConcern
8
8
  end
9
9
 
10
10
  def show
11
+ current = @fluentd.agent.config
12
+ target = @backup_file.content
13
+ if target
14
+ @sdiff = Diff::LCS.sdiff(current.split("\n").map(&:rstrip), target.split("\n").map(&:rstrip))
15
+ @changed = @sdiff.any? { |context_change| context_change.changed? }
16
+ end
11
17
  end
12
18
 
13
19
  def reuse
@@ -17,14 +17,11 @@ class Fluentd::SettingsController < ApplicationController
17
17
  end
18
18
 
19
19
  def update
20
- Fluent::Config::V1Parser.parse(params[:config], @fluentd.config_file)
21
- @fluentd.agent.config_write params[:config]
22
- @fluentd.agent.restart if @fluentd.agent.running?
23
- redirect_to daemon_setting_path(@fluentd)
24
- rescue Fluent::ConfigParseError => e
25
- @config = params[:config]
26
- @error = e.message
27
- render "edit"
20
+ if params[:dryrun]
21
+ handle_dryrun
22
+ else
23
+ handle_update
24
+ end
28
25
  end
29
26
 
30
27
  def source_and_output
@@ -37,4 +34,36 @@ class Fluentd::SettingsController < ApplicationController
37
34
  def set_config
38
35
  @config = @fluentd.agent.config
39
36
  end
37
+
38
+ def handle_dryrun
39
+ if dryrun(params[:config])
40
+ flash.now[:success] = I18n.t('messages.dryrun_is_passed')
41
+ else
42
+ flash.now[:danger] = @fluentd.agent.last_error_message
43
+ end
44
+ @config = params[:config]
45
+ render "edit"
46
+ end
47
+
48
+ def handle_update
49
+ update_config(params[:config])
50
+ redirect_to daemon_setting_path(@fluentd)
51
+ rescue Fluent::ConfigParseError => e
52
+ @config = params[:config]
53
+ flash.now[:danger] = e.message
54
+ render "edit"
55
+ end
56
+
57
+ def dryrun(conf)
58
+ tmpfile = Tempfile.open("fluentd-test-config")
59
+ tmpfile.write params[:config]
60
+ tmpfile.close
61
+ @fluentd.agent.dryrun(tmpfile.path)
62
+ end
63
+
64
+ def update_config(conf)
65
+ Fluent::Config::V1Parser.parse(conf, @fluentd.config_file)
66
+ @fluentd.agent.config_write conf
67
+ @fluentd.agent.restart if @fluentd.agent.running?
68
+ end
40
69
  end
@@ -17,9 +17,12 @@ module FluentGem
17
17
  # but long living caching causes mismatch with actual status e.g. user install plugin from console (without fluentd-ui)
18
18
  # So our decision is that cache `gem list` in 3 seconds
19
19
  Rails.cache.fetch(LIST_CACHE_KEY, expires_in: 3.seconds) do
20
- output = `#{gem} list`
21
- if $? && $?.exitstatus != 0 # NOTE: $? will be nil on CircleCI, so check $? at first
22
- raise GemError, "failed command: `#{gem} list`"
20
+ last_status = $?
21
+ output = `#{gem} list 2>&1`
22
+ # https://github.com/fluent/fluentd-ui/pull/149#issuecomment-71954588
23
+ # Sometimes, $? wouldn't override with `#{gem} list` but I don't know why..
24
+ if $? && last_status != $? && $?.exitstatus != 0 # NOTE: $? will be nil on CircleCI, so check $? at first
25
+ raise GemError, "failed command: `#{gem} list` output: #{output}"
23
26
  end
24
27
  output.lines.to_a
25
28
  end
@@ -23,5 +23,6 @@ class Fluentd
23
23
  # td-agent: /etc/td-agent/td-agent.conf
24
24
  # - https://github.com/treasure-data/td-agent/blob/master/debian/td-agent.postinst#L69
25
25
  # fluentd: /etc/fluent/fluent.conf (by fluentd -s)
26
+ class ConfigError < StandardError; end
26
27
  end
27
28
  end
@@ -45,6 +45,10 @@ class Fluentd
45
45
  errors
46
46
  end
47
47
 
48
+ def last_error_message
49
+ recent_errors(1).first.try(:[], :subject) || ""
50
+ end
51
+
48
52
  def pid_file
49
53
  extra_options[:pid_file] || self.class.default_options[:pid_file]
50
54
  end
@@ -42,10 +42,15 @@ class Fluentd
42
42
  actual_reload
43
43
  end
44
44
 
45
- def dryrun
46
- Bundler.with_clean_env do
47
- system("fluentd -q --dry-run #{options_to_argv}")
48
- end
45
+ def dryrun!(file_path = nil)
46
+ exec_dryrun("fluentd", file_path)
47
+ end
48
+
49
+ def config_syntax_check
50
+ Fluent::Config::V1Parser.parse(params[:config], config_file)
51
+ true
52
+ rescue Fluent::ConfigParseError
53
+ false
49
54
  end
50
55
 
51
56
  def version
@@ -56,15 +61,6 @@ class Fluentd
56
61
 
57
62
  private
58
63
 
59
- def options_to_argv
60
- argv = ""
61
- argv << " --use-v1-config"
62
- argv << " -c #{config_file}"
63
- argv << " -d #{pid_file}"
64
- argv << " -o #{log_file}"
65
- argv
66
- end
67
-
68
64
  def validate_fluentd_options
69
65
  dryrun
70
66
  end
@@ -73,8 +73,22 @@ class Fluentd
73
73
  backup_files_in_old_order.reverse
74
74
  end
75
75
 
76
+ def dryrun(file_path = nil)
77
+ dryrun!(file_path)
78
+ true
79
+ rescue ::Fluentd::Agent::ConfigError
80
+ false
81
+ end
82
+
76
83
  private
77
84
 
85
+ def exec_dryrun(command, file_path = nil)
86
+ Bundler.with_clean_env do
87
+ system("#{command} -q --dry-run #{options_to_argv(config_file: file_path)}", out: File::NULL, err: File::NULL)
88
+ raise ::Fluentd::Agent::ConfigError, last_error_message unless $?.exitstatus.zero?
89
+ end
90
+ end
91
+
78
92
  def backup_config
79
93
  return unless File.exists? config_file
80
94
 
@@ -173,6 +187,15 @@ class Fluentd
173
187
  thread.join
174
188
  thread.value.exitstatus.zero?
175
189
  end
190
+
191
+ def options_to_argv(opts = {})
192
+ argv = ""
193
+ argv << " --use-v1-config"
194
+ argv << " -c #{opts[:config_file] || config_file}"
195
+ argv << " -d #{opts[:pid_file] || pid_file}"
196
+ argv << " -o #{opts[:log_file] || log_file}"
197
+ argv
198
+ end
176
199
  end
177
200
  end
178
201
  end