Merge pull request #54 from treasure-data/fix_gem_handling

Fix gem handling
This commit is contained in:
uu59 2014-07-22 11:09:37 +09:00
commit da9111a72a
8 changed files with 32 additions and 8 deletions

View File

@ -47,7 +47,7 @@ class MiscController < ApplicationController
end
zip.get_output_stream('versions.txt') do |f|
f.puts "ruby: #{RUBY_DESCRIPTION}"
f.puts "fluentd: #{Fluent::VERSION}"
f.puts "fluentd: #{FluentdUI.fluentd_version}"
f.puts "fluentd-ui: #{FluentdUI::VERSION}"
end
end

View File

@ -66,7 +66,7 @@ class Fluentd
end
end
%w(running? log config config_write config_append log_tail configuration).each do |method|
%w(running? version log config config_write config_append log_tail configuration).each do |method|
define_method(method) do
raise NotImplementedError, "'#{method}' method is required to be defined"
end

View File

@ -41,6 +41,12 @@ class Fluentd
actual_reload
end
def version
Bundler.with_clean_env do
`fluentd --version`.strip
end
end
private
def options_to_argv

View File

@ -25,6 +25,10 @@ class Fluentd
# https://github.com/treasure-data/td-agent/blob/master/debian/td-agent.init#L156
system('/etc/init.d/td-agent restart')
end
def version
`td-agent --version`.strip
end
end
end
end

View File

@ -190,11 +190,16 @@ class Plugin
end
def fluent_gem_path
# On installed both td-agent and fluentd system, decide which fluent-gem command should be used depend on setup(Fluentd.instance)
if Fluentd.instance && Fluentd.instance.fluentd?
return "fluent-gem" # maybe `fluent-gem` command is in the $PATH
end
# NOTE: td-agent has a command under the /usr/lib{,64}, td-agent2 has under /opt/td-agent
%W(
fluent-gem
/opt/td-agent/embedded/bin/fluent-gem
/usr/lib/fluent/ruby/bin/fluent-gem
/usr/lib64/fluent/ruby/bin/fluent-gem
/opt/td-agent/embedded/bin/fluent-gem
).find do |path|
system("which #{path}", out: File::NULL, err: File::NULL)
end

View File

@ -24,7 +24,7 @@
%dt ruby
%dd= RUBY_DESCRIPTION
%dt fluentd
%dd= Fluent::VERSION
%dd= FluentdUI.fluentd_version
%dt fluentd-ui
%dd= FluentdUI::VERSION
@ -51,9 +51,8 @@
%div.col-lg-12
%div.panel.panel-default
%div.panel-heading
%h4
%a{"data-toggle" => "collapse", "href" => "#env-table"}
= icon('fa-caret-down')
%h4{"data-toggle" => "collapse", "href" => "#env-table"}
= icon('fa-caret-down')
= t('.env')
%table{class: "table table-hover collapse", id: "env-table"}
%thead

View File

@ -12,6 +12,8 @@
</ul>
<% end %>
</li>
<% if fluentd_exists? %>
<li>
<%= link_to_other icon("fa-cogs fa-fw") << " " << t('terms.plugins') << icon('fa pull-right fa-caret-down'), plugins_path %>
<ul class="nav nav-second-level">
@ -27,6 +29,8 @@
</ul>
<!-- /.nav-second-level -->
</li>
<% end %>
<li>
<%= link_to_other icon('fa-coffee fa-fw') << " " << t('terms.misc') << icon('fa pull-right fa-caret-down'), misc_path %>
<ul class="nav nav-second-level">

View File

@ -13,4 +13,10 @@ module FluentdUI
current = Gem::Version.new(::FluentdUI::VERSION)
latest > current
end
def self.fluentd_version
setup_fluentd = Fluentd.instance
return nil unless setup_fluentd
setup_fluentd.agent.version
end
end