Sha256: edc47a403fbecf4d8c5dfd56a13a24871142d2735b63e7a41bf0fd9e4c65de6b

Contents?: true

Size: 1.17 KB

Versions: 1

Compression:

Stored size: 1.17 KB

Contents

require "matchd"

module Matchd::CLI
  class Main < Thor
    package_name "Matchd"

    include ConfigFileOption

    desc "start [options]", "Start the matchd dns service"
    option :deamonize,
      default: true,
      type: :boolean,
      desc: "Start as background daemon."
    def start
      Matchd::Control.new.start(ontop: !options[:deamonize])
    end

    desc "stop", "Stop the running matchd dns daemon"
    def stop
      Matchd::Control.new.stop
    end

    desc "status", "Print process status information"
    def status
      Matchd::Control.new.status
    end

    desc "restart", "Restart the running matchd daemon"
    long_desc "Stop and Start with new options. " \
              "This is the same as running stop and start successively.\n\n" \
              "If your configuration changes the 'dot_dir' you'll need to stop using the old config and start with the new one."
    option :deamonize,
      default: true,
      type: :boolean,
      desc: "Restart as background daemon.",
      long_desc: ""
    def restart
      invoke :stop
      invoke :start
    end

    desc "config SUBCOMMAND ...ARGS", "manage configuration files"
    subcommand "config", Config
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
matchd-0.1.0 lib/matchd/cli/main.rb