mirror of
https://github.com/fluent/fluentd-ui.git
synced 2025-08-11 08:47:06 +02:00
89 lines
3.2 KiB
Ruby
89 lines
3.2 KiB
Ruby
class PluginsController < ApplicationController
|
|
def index
|
|
redirect_to installed_plugins_path
|
|
end
|
|
|
|
def installed
|
|
@plugins = Plugin.installed
|
|
end
|
|
|
|
def recommended
|
|
@plugins = recommended_plugins
|
|
end
|
|
|
|
def updated
|
|
@plugins = Plugin.installed.reject{|plugin| plugin.latest_version? }
|
|
end
|
|
|
|
def install
|
|
params[:plugins].each do |gem_name|
|
|
GemInstaller.new.async.perform(gem_name)
|
|
end
|
|
redirect_to plugins_path
|
|
end
|
|
|
|
def uninstall
|
|
params[:plugins].each do |gem_name|
|
|
GemUninstaller.new.async.perform(gem_name)
|
|
end
|
|
redirect_to plugins_path
|
|
end
|
|
|
|
def upgrade
|
|
GemInstaller.new.async.perform(params[:plugins][:name], params[:plugins][:version])
|
|
redirect_to plugins_path
|
|
end
|
|
|
|
private
|
|
|
|
def recommended_plugins
|
|
# TODO: how to manage recommended plugins?
|
|
[
|
|
Plugin.new(gem_name: "fluent-plugin-mongo"),
|
|
Plugin.new(gem_name: "fluent-plugin-s3"),
|
|
Plugin.new(gem_name: "fluent-plugin-secure-forward"),
|
|
Plugin.new(gem_name: "fluent-plugin-forest"),
|
|
Plugin.new(gem_name: "fluent-plugin-couch"),
|
|
Plugin.new(gem_name: "fluent-plugin-dstat"),
|
|
Plugin.new(gem_name: "fluent-plugin-parser"),
|
|
Plugin.new(gem_name: "fluent-plugin-map"),
|
|
Plugin.new(gem_name: "fluent-plugin-grep"),
|
|
Plugin.new(gem_name: "fluent-plugin-webhdfs"),
|
|
Plugin.new(gem_name: "fluent-plugin-rewrite-tag-filter"),
|
|
Plugin.new(gem_name: "fluent-plugin-td"),
|
|
Plugin.new(gem_name: "fluent-plugin-elasticsearch"),
|
|
Plugin.new(gem_name: "fluent-plugin-datacounter"),
|
|
Plugin.new(gem_name: "fluent-plugin-flowcounter"),
|
|
Plugin.new(gem_name: "fluent-plugin-numeric-counter"),
|
|
Plugin.new(gem_name: "fluent-plugin-record-reformer"),
|
|
Plugin.new(gem_name: "fluent-plugin-pghstore"),
|
|
Plugin.new(gem_name: "fluent-plugin-notifier"),
|
|
Plugin.new(gem_name: "fluent-plugin-mysqlslowquery"),
|
|
Plugin.new(gem_name: "fluent-plugin-boundio"),
|
|
Plugin.new(gem_name: "fluent-plugin-ses"),
|
|
Plugin.new(gem_name: "fluent-plugin-groonga"),
|
|
Plugin.new(gem_name: "fluent-plugin-websocket"),
|
|
Plugin.new(gem_name: "fluent-plugin-pgjson"),
|
|
Plugin.new(gem_name: "fluent-plugin-say"),
|
|
Plugin.new(gem_name: "fluent-plugin-uri_decoder"),
|
|
Plugin.new(gem_name: "fluent-plugin-rds-log"),
|
|
Plugin.new(gem_name: "fluent-plugin-msgpack-rpc"),
|
|
Plugin.new(gem_name: "fluent-plugin-reemit"),
|
|
Plugin.new(gem_name: "fluent-plugin-multiprocess"),
|
|
Plugin.new(gem_name: "fluent-plugin-dbi"),
|
|
Plugin.new(gem_name: "fluent-plugin-serialport"),
|
|
Plugin.new(gem_name: "fluent-plugin-loggly"),
|
|
Plugin.new(gem_name: "fluent-plugin-out-solr"),
|
|
Plugin.new(gem_name: "fluent-plugin-riak"),
|
|
Plugin.new(gem_name: "fluent-plugin-couchbase"),
|
|
Plugin.new(gem_name: "fluent-plugin-unique-counter"),
|
|
Plugin.new(gem_name: "fluent-plugin-flatten-hash"),
|
|
Plugin.new(gem_name: "fluent-plugin-solr"),
|
|
Plugin.new(gem_name: "fluent-plugin-dd"),
|
|
Plugin.new(gem_name: "fluent-plugin-gstore"),
|
|
Plugin.new(gem_name: "fluent-plugin-mongokpi"),
|
|
Plugin.new(gem_name: "fluent-plugin-jsonbucket"),
|
|
]
|
|
end
|
|
end
|