Class: Berkshelf::HumanFormatter

Inherits:
BaseFormatter show all
Defined in:
lib/berkshelf/formatters/human.rb

Instance Method Summary collapse

Methods inherited from BaseFormatter

#cleanup_hook, formatter_method

Instance Method Details

#deprecation(message) ⇒ Object

Output a deprecation warning

Parameters:


157
158
159
# File 'lib/berkshelf/formatters/human.rb', line 157

def deprecation(message)
  Berkshelf.ui.info "DEPRECATED: #{message}"
end

#error(message) ⇒ Object

Output an error message using Berkshelf.ui

Parameters:


143
144
145
# File 'lib/berkshelf/formatters/human.rb', line 143

def error(message)
  Berkshelf.ui.error message
end

#fetch(dependency) ⇒ Object

Parameters:


9
10
11
# File 'lib/berkshelf/formatters/human.rb', line 9

def fetch(dependency)
  Berkshelf.ui.info "Fetching '#{dependency.name}' from #{dependency.location}"
end

#info(cookbook) ⇒ Object

Output the important information about a cookbook using Berkshelf.ui.

Parameters:


91
92
93
# File 'lib/berkshelf/formatters/human.rb', line 91

def info(cookbook)
  Berkshelf.ui.info(cookbook.pretty_print)
end

#install(source, cookbook) ⇒ Object

Output a Cookbook installation message using Berkshelf.ui

Parameters:

  • source (Source)

    the source the dependency is being downloaded from

  • cookbook (RemoteCookbook)

    the cookbook to be downloaded


19
20
21
22
23
24
25
26
27
28
# File 'lib/berkshelf/formatters/human.rb', line 19

def install(source, cookbook)
  message = "Installing #{cookbook.name} (#{cookbook.version})"

  unless source.default?
    message << " from #{source}"
    message << " ([#{cookbook.location_type}] #{cookbook.location_path})"
  end

  Berkshelf.ui.info(message)
end

#list(dependencies) ⇒ Object

Output a list of cookbooks using Berkshelf.ui

Parameters:


98
99
100
101
102
103
104
105
# File 'lib/berkshelf/formatters/human.rb', line 98

def list(dependencies)
  Berkshelf.ui.info "Cookbooks installed by your Berksfile:"
  dependencies.each do |dependency|
    out =  "  * #{dependency}"
    out << " from #{dependency.location}" if dependency.location
    Berkshelf.ui.info(out)
  end
end

#msg(message) ⇒ Object

Output a generic message using Berkshelf.ui

Parameters:


136
137
138
# File 'lib/berkshelf/formatters/human.rb', line 136

def msg(message)
  Berkshelf.ui.info message
end

#outdated(hash) ⇒ Object

Output a list of outdated cookbooks and the most recent version using Berkshelf.ui

Parameters:

  • hash (Hash)

    the list of outdated cookbooks in the format { 'cookbook' => { 'supermarket.chef.io' => #<Cookbook> } }


61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/berkshelf/formatters/human.rb', line 61

def outdated(hash)
  if hash.empty?
    Berkshelf.ui.info('All cookbooks up to date!')
  else
    Berkshelf.ui.info('The following cookbooks have newer versions:')

    hash.each do |name, info|
      info['remote'].each do |remote_source, remote_version|
        out = "  * #{name} (#{info['local']} => #{remote_version})"

        unless remote_source.default?
          out << " [#{remote_source.uri}]"
        end

        Berkshelf.ui.info(out)
      end
    end
  end
end

#package(destination) ⇒ Object

Output a Cookbook package message using Berkshelf.ui

Parameters:


84
85
86
# File 'lib/berkshelf/formatters/human.rb', line 84

def package(destination)
  Berkshelf.ui.info "Cookbook(s) packaged to #{destination}"
end

#search(results) ⇒ Object

Ouput Cookbook search results using Berkshelf.ui

Parameters:

  • results (Array<APIClient::RemoteCookbook>)

110
111
112
113
114
# File 'lib/berkshelf/formatters/human.rb', line 110

def search(results)
  results.sort_by(&:name).each do |remote_cookbook|
    Berkshelf.ui.info "#{remote_cookbook.name} (#{remote_cookbook.version})"
  end
end

#show(cookbook) ⇒ Object

Output Cookbook path using Berkshelf.ui

Parameters:


119
120
121
122
# File 'lib/berkshelf/formatters/human.rb', line 119

def show(cookbook)
  path = File.expand_path(cookbook.path)
  Berkshelf.ui.info(path)
end

#skipping(cookbook, conn) ⇒ Object

Output a Cookbook skip message using Berkshelf.ui

Parameters:


51
52
53
# File 'lib/berkshelf/formatters/human.rb', line 51

def skipping(cookbook, conn)
  Berkshelf.ui.info "Skipping #{cookbook.cookbook_name} (#{cookbook.version}) (frozen)"
end

#uploaded(cookbook, conn) ⇒ Object

Output a Cookbook upload message using Berkshelf.ui

Parameters:


43
44
45
# File 'lib/berkshelf/formatters/human.rb', line 43

def uploaded(cookbook, conn)
  Berkshelf.ui.info "Uploaded #{cookbook.cookbook_name} (#{cookbook.version}) to: '#{conn.server_url}'"
end

#use(dependency) ⇒ Object

Output a Cookbook use message using Berkshelf.ui

Parameters:


33
34
35
36
37
# File 'lib/berkshelf/formatters/human.rb', line 33

def use(dependency)
  message =  "Using #{dependency.name} (#{dependency.locked_version})"
  message << " from #{dependency.location}" if dependency.location
  Berkshelf.ui.info(message)
end

#vendor(cookbook, destination) ⇒ Object

Output Cookbook vendor info message using Berkshelf.ui

Parameters:


128
129
130
131
# File 'lib/berkshelf/formatters/human.rb', line 128

def vendor(cookbook, destination)
  cookbook_destination = File.join(destination, cookbook.cookbook_name)
  Berkshelf.ui.info "Vendoring #{cookbook.cookbook_name} (#{cookbook.version}) to #{cookbook_destination}"
end

#versionObject

Output the version of Berkshelf


4
5
6
# File 'lib/berkshelf/formatters/human.rb', line 4

def version
  Berkshelf.ui.info Berkshelf::VERSION
end

#warn(message) ⇒ Object

Output a warning message using Berkshelf.ui

Parameters:


150
151
152
# File 'lib/berkshelf/formatters/human.rb', line 150

def warn(message)
  Berkshelf.ui.warn message
end