From bc41fb5f4241a8391a3c468c779d6a2144dfd7e2 Mon Sep 17 00:00:00 2001 From: uu59 Date: Thu, 3 Jul 2014 16:25:08 +0900 Subject: [PATCH] Add fluentd-ui gem updates check --- app/workers/fluentd_ui_update_check.rb | 15 +++++++++++++++ lib/fluentd-ui.rb | 10 ++++++++++ 2 files changed, 25 insertions(+) create mode 100644 app/workers/fluentd_ui_update_check.rb diff --git a/app/workers/fluentd_ui_update_check.rb b/app/workers/fluentd_ui_update_check.rb new file mode 100644 index 0000000..633e6c9 --- /dev/null +++ b/app/workers/fluentd_ui_update_check.rb @@ -0,0 +1,15 @@ +class FluentdUiUpdateCheck + include SuckerPunch::Job + + def perform + pl = Plugin.new(gem_name: "fluentd-ui") + if pl.gem_versions # NOTE: fluentd-ui is not released yet, so `pl.latest_version` will fail for now + FluentdUI.latest_version = pl.latest_version + end + later(3600) # will be checked every hour + end + + def later(sec) + after(sec) { perform } + end +end diff --git a/lib/fluentd-ui.rb b/lib/fluentd-ui.rb index ead308a..6cab74a 100644 --- a/lib/fluentd-ui.rb +++ b/lib/fluentd-ui.rb @@ -1,2 +1,12 @@ module FluentdUI + def self.latest_version=(version) + @latest = version + end + + def self.update_available? + return unless @latest + latest = Gem::Version.new(@latest) + current = Gem::Version.new(::FluentdUI::VERSION) + latest > current + end end