diff options
| author | elijah <elijah@riseup.net> | 2016-08-31 14:23:31 -0700 | 
|---|---|---|
| committer | elijah <elijah@riseup.net> | 2016-08-31 14:23:31 -0700 | 
| commit | 184872506094394ca6f2290f546ab10a9e36b293 (patch) | |
| tree | 3be9503f3751f9636ffe1262124f13dc7f1af5f5 | |
| parent | 0a09a6e6f247729457d15480f8d2b9bb0b89ae5e (diff) | |
fixed `leap inspect`
| -rw-r--r-- | lib/leap_cli/commands/inspect.rb | 43 | 
1 files changed, 28 insertions, 15 deletions
| diff --git a/lib/leap_cli/commands/inspect.rb b/lib/leap_cli/commands/inspect.rb index fbd577e5..b71da80e 100644 --- a/lib/leap_cli/commands/inspect.rb +++ b/lib/leap_cli/commands/inspect.rb @@ -25,27 +25,22 @@ module LeapCli; module Commands      "PEM certificate request" => :inspect_x509_csr    } +  SUFFIX_MAP = { +    ".json" => :inspect_unknown_json, +    ".key"  => :inspect_x509_key +  } +    def inspection_method(object)      if File.exist?(object)        ftype = `file #{object}`.split(':').last.strip +      suffix = File.extname(object)        log 2, "file is of type '#{ftype}'"        if FTYPE_MAP[ftype]          FTYPE_MAP[ftype] -      elsif File.extname(object) == ".json" -        full_path = File.expand_path(object, Dir.pwd) -        if path_match?(:node_config, full_path) -          :inspect_node -        elsif path_match?(:service_config, full_path) -          :inspect_service -        elsif path_match?(:tag_config, full_path) -          :inspect_tag -        elsif path_match?(:provider_config, full_path) || path_match?(:provider_env_config, full_path) -          :inspect_provider -        elsif path_match?(:common_config, full_path) -          :inspect_common -        else -          nil -        end +      elsif SUFFIX_MAP[suffix] +        SUFFIX_MAP[suffix] +      else +        nil        end      elsif manager.nodes[object]        :inspect_node @@ -72,6 +67,7 @@ module LeapCli; module Commands    end    def inspect_x509_cert(file_path, options) +    require 'leap_cli/x509'      assert_bin! 'openssl'      puts assert_run! 'openssl x509 -in %s -text -noout' % file_path      log 0, :"SHA1 fingerprint", X509.fingerprint("SHA1", file_path) @@ -124,6 +120,23 @@ module LeapCli; module Commands      end    end +  def inspect_unknown_json(arg, options) +    full_path = File.expand_path(arg, Dir.pwd) +    if path_match?(:node_config, full_path) +      inspect_node(arg, options) +    elsif path_match?(:service_config, full_path) +      inspect_service(arg, options) +    elsif path_match?(:tag_config, full_path) +      inspect_tag(arg, options) +    elsif path_match?(:provider_config, full_path) || path_match?(:provider_env_config, full_path) +      inspect_provider(arg, options) +    elsif path_match?(:common_config, full_path) +      inspect_common(arg, options) +    else +      inspect_json(arg, options) +    end +  end +    #    # helpers    # | 
