class Travis::CLI::Settings
Constants
- DESCRIPTIONS
Attributes
setting[RW]
Public Instance Methods
all_settings?()
click to toggle source
# File lib/travis/cli/settings.rb, line 63 def all_settings? agree("Really #{setting ? "enable" : "disable"} all settings? ") do |q| q.default = "no" end end
boolean?(key)
click to toggle source
# File lib/travis/cli/settings.rb, line 51 def boolean?(key) key.to_sym != :maximum_number_of_builds end
describe(key, description = key) { |desc| ... }
click to toggle source
# File lib/travis/cli/settings.rb, line 69 def describe(key, description = key) return description if keys? desc = DESCRIPTIONS[key.to_sym] desc &&= yield(desc) if block_given? desc || description end
format_value(value)
click to toggle source
# File lib/travis/cli/settings.rb, line 55 def format_value(value) case value when false, nil then color("[-]", [ :bold, :red ]) when true then color("[+]", [ :bold, :green ]) else color(value.to_s.rjust(3), [ :bold, :blue ]) end end
run(*keys)
click to toggle source
# File lib/travis/cli/settings.rb, line 22 def run(*keys) exit 1 if interactive? and keys.empty? and !setting.nil? and !all_settings? and !configure? authenticate say repository.slug, "Settings for %s:" repository.settings.to_h.each do |key, value| next unless keys.empty? or keys.include? key if configure? if boolean? key repository.settings[key] = agree("#{describe(key, "enable #{key}")}? ") do |q| default = setting.nil? ? value : setting q.default = default ? "yes" : "no" end else repository.settings[key] = ask("#{describe(key, "Value for #{key}")}: ", Integer) do |q| default = setting.to_i if setting and setting.respond_to? :to_i default ||= value default ||= 0 q.default = default end end else value = repository.settings[key] = setting unless setting.nil? descr = color(describe(key, color(key, :info)) { |s| key.ljust(30) + " " + color(s, [:reset, :bold]) }, :info) say format_value(value) << " " << descr end end repository.settings.save if configure? or !setting.nil? end