Add basic JSON option to brew cask
$ brew cask info --json <cask>
This commit is contained in:
		
							parent
							
								
									61a8c4d1fb
								
							
						
					
					
						commit
						2d5ae645d9
					
				@ -129,5 +129,26 @@ module Hbc
 | 
			
		||||
        odebug "Cask instance method '#{method}':", send(method).to_yaml
 | 
			
		||||
      end
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def to_hash
 | 
			
		||||
      hsh = {
 | 
			
		||||
        "name" => name,
 | 
			
		||||
        "homepage" => homepage,
 | 
			
		||||
        "url" => url,
 | 
			
		||||
        "appcast" => appcast,
 | 
			
		||||
        "version" => version,
 | 
			
		||||
        "sha256" => sha256,
 | 
			
		||||
        "artifacts" => artifacts,
 | 
			
		||||
        "caveats" => caveats,
 | 
			
		||||
        "depends_on" => depends_on,
 | 
			
		||||
        "conflicts_with" => conflicts_with,
 | 
			
		||||
        "container" => container,
 | 
			
		||||
        "gpg" => gpg,
 | 
			
		||||
        "accessibility_access" => accessibility_access,
 | 
			
		||||
        "auto_updates" => auto_updates
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      hsh
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
@ -1,15 +1,24 @@
 | 
			
		||||
require "json"
 | 
			
		||||
 | 
			
		||||
module Hbc
 | 
			
		||||
  class CLI
 | 
			
		||||
    class Info < AbstractCommand
 | 
			
		||||
      option "--json", :json, false
 | 
			
		||||
      
 | 
			
		||||
      def initialize(*)
 | 
			
		||||
        super
 | 
			
		||||
        raise CaskUnspecifiedError if args.empty?
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
      def run
 | 
			
		||||
        casks.each do |cask|
 | 
			
		||||
          odebug "Getting info for Cask #{cask}"
 | 
			
		||||
          self.class.info(cask)
 | 
			
		||||
        if json?
 | 
			
		||||
          json = casks.map(&:to_hash)
 | 
			
		||||
          puts JSON.generate(json)
 | 
			
		||||
        else
 | 
			
		||||
          casks.each do |cask|
 | 
			
		||||
            odebug "Getting info for Cask #{cask}"
 | 
			
		||||
            self.class.info(cask)
 | 
			
		||||
          end
 | 
			
		||||
        end
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user