Sha256: 32eb81b28d6de9edd5e2272abf43ff574d5197b5402185fe861b178d78a98f2a

Contents?: true

Size: 1.04 KB

Versions: 5

Compression:

Stored size: 1.04 KB

Contents

require "thor"
require "zabbix-ruby-client"

class ZabbixRubyClient

  class Cli < Thor
    include Thor::Actions

    def self.source_root
      File.expand_path("../../../templates", __FILE__)
    end

    default_task :help
    class_option :configfile,
      aliases: "-c",
      banner: "PATH",
      default: File.expand_path("config.yml", Dir.pwd),
      desc: "Path to the configuration file to use"

    desc "init", "Initialize a new zabbix ruby client"
    def init(name = "zabbix-ruby-client")
      directory "client", name
    end

    desc "show", "Displays in console what are the collected data ready to be sent"
    def show
      begin
        Bundler.require
      rescue Bundler::GemfileNotFound
        say "No Gemfile found", :red
        abort
      end
      zrc = ZabbixRubyClient.new(options[:configfile])
      zrc.collect
      zrc.show
    end

    desc "upload", "Collects and sends data to the zabbix server"
    def upload
      zrc = ZabbixRubyClient.new(options[:configfile])
      zrc.collect
      zrc.upload
    end

  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
zabbix-ruby-client-0.0.8 lib/zabbix-ruby-client/cli.rb
zabbix-ruby-client-0.0.7 lib/zabbix-ruby-client/cli.rb
zabbix-ruby-client-0.0.6 lib/zabbix-ruby-client/cli.rb
zabbix-ruby-client-0.0.5 lib/zabbix-ruby-client/cli.rb
zabbix-ruby-client-0.0.4 lib/zabbix-ruby-client/cli.rb