class Travis::CLI::Init
Constants
- LANGUAGE_MAPPING
Attributes
travis_config[W]
Public Class Methods
languages()
click to toggle source
# File lib/travis/cli/init.rb, line 36 def self.languages Dir[asset_path('init/*.yml')].map { |f| File.basename(f, '.yml') }.sort end
Public Instance Methods
custom_config()
click to toggle source
# File lib/travis/cli/init.rb, line 59 def custom_config @custom_config ||= {} end
help()
click to toggle source
Calls superclass method
# File lib/travis/cli/init.rb, line 40 def help super("Available languages: #{self.class.languages.join(", ")}\n\n") end
run(language = nil, file = '.travis.yml')
click to toggle source
Calls superclass method
Travis::CLI::Enable#run
# File lib/travis/cli/init.rb, line 44 def run(language = nil, file = '.travis.yml') error "#{file} already exists, use --force to override" if File.exist?(file) and not force? and not print_conf? language ||= ask('Main programming language used: ') { |q| q.default = detect_language } self.travis_config = template(language).merge(custom_config) if print_conf? puts travis_config.to_yaml else save_travis_config(file) say("#{file} file created!") end super() unless skip_enable? end
Private Instance Methods
detect_language()
click to toggle source
# File lib/travis/cli/init.rb, line 77 def detect_language repository.github_language || "Ruby" end
template(language)
click to toggle source
# File lib/travis/cli/init.rb, line 69 def template(language) language = language.to_s.downcase language = LANGUAGE_MAPPING[language] || language file = template_name(language) error "unknown language #{language}" unless File.exist? file YAML.load_file(file) end
template_name(language)
click to toggle source
# File lib/travis/cli/init.rb, line 65 def template_name(language) asset_path "init/#{language}.yml" end