Sha256: c675af8e8005636cf423beef14094072ea728dc733f83af729ba2a85a9183b3f
Contents?: true
Size: 1.66 KB
Versions: 1
Compression:
Stored size: 1.66 KB
Contents
# -*- encoding: utf-8 -*- # # Author:: Fletcher Nichol (<fnichol@nichol.ca>) # # Copyright (C) 2013, Fletcher Nichol # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'kitchen/command' require 'kitchen/diagnostic' require 'yaml' module Kitchen module Command # Command to log into to instance. # # @author Fletcher Nichol <fnichol@nichol.ca> class Diagnose < Kitchen::Command::Base def call instances = record_failure { load_instances } loader = record_failure { load_loader } puts Kitchen::Diagnostic.new( :loader => loader, :instances => instances).read.to_yaml end private def load_instances if options[:all] || options[:instances] parse_subcommand(args.first) else [] end end def load_loader if options[:all] || options[:loader] @loader else nil end end def record_failure yield rescue => e { :error => { :exception => e.inspect, :message => e.message, :backtrace => e.backtrace } } end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
test-kitchen-1.2.1 | lib/kitchen/command/diagnose.rb |