class LitmusPaper::CLI::Admin::Force
Public Class Methods
build_request(options, args)
click to toggle source
# File lib/litmus_paper/cli/admin/force.rb, line 9 def self.build_request(options, args) options.merge! _default_options opt_parser = _extend_default_parser(options) do |opts| opts.banner = "Usage: litmusctl force <up|down|health N> [service] [options]" opts.on("-d", "--delete", "Remove status file") do options[:delete] = true end opts.on("-r", "--reason=reason", String, "Reason for status file") do |reason| options[:reason] = reason.gsub("\n", " ") end end opt_parser.parse! args if args[0] == "health" && !options[:delete] direction, value, service = args else direction, service = args end path = service ? "/#{service}/#{direction}" : "/#{direction}" if options[:delete] request = Net::HTTP::Delete.new(path) else if !options.has_key?(:reason) print "Reason? " options[:reason] = STDIN.gets.chomp.gsub("\n", " ") end request = Net::HTTP::Post.new(path) params = {'reason' => options[:reason]} params.merge!({'health' => value}) if direction == 'health' request.set_form_data(params) end request end
description()
click to toggle source
# File lib/litmus_paper/cli/admin/force.rb, line 5 def self.description "Force services up or down" end