Exception: Chef::Exceptions::CookbookVersionSelection::UnsatisfiableRunListItem

Inherits:
StandardError
  • Object
show all
Defined in:
lib/chef/exceptions.rb

Overview

In run_list expansion and resolution, a constraint was unsatisfiable.

This exception may not be the complete error report. If you resolve the misconfiguration represented by this exception and re-solve, you may get another exception

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(message, run_list_item, non_existent_cookbooks, most_constrained_cookbooks) ⇒ UnsatisfiableRunListItem

most_constrained_cookbooks: if I were to remove constraints regarding these cookbooks, I would get a solution or move on to the next error (deeper in the graph). An item in this list may be unsatisfiable, but when resolved may also reveal further unsatisfiable constraints; this condition would not be reported.


134
135
136
137
138
139
140
# File 'lib/chef/exceptions.rb', line 134

def initialize(message, run_list_item, non_existent_cookbooks, most_constrained_cookbooks)
  super(message)

  @run_list_item = run_list_item
  @non_existent_cookbooks = non_existent_cookbooks
  @most_constrained_cookbooks = most_constrained_cookbooks
end

Instance Attribute Details

#most_constrained_cookbooksObject (readonly)

Returns the value of attribute most_constrained_cookbooks


126
127
128
# File 'lib/chef/exceptions.rb', line 126

def most_constrained_cookbooks
  @most_constrained_cookbooks
end

#non_existent_cookbooksObject (readonly)

Returns the value of attribute non_existent_cookbooks


126
127
128
# File 'lib/chef/exceptions.rb', line 126

def non_existent_cookbooks
  @non_existent_cookbooks
end

#run_list_itemObject (readonly)

Returns the value of attribute run_list_item


125
126
127
# File 'lib/chef/exceptions.rb', line 125

def run_list_item
  @run_list_item
end

Instance Method Details

#to_json(*a) ⇒ Object


142
143
144
145
146
147
148
149
150
# File 'lib/chef/exceptions.rb', line 142

def to_json(*a)
  result = {
    "message" => message,
    "unsatisfiable_run_list_item" => run_list_item,
    "non_existent_cookbooks" => non_existent_cookbooks,
    "most_constrained_cookbooks" => most_constrained_cookbooks
  }
  result.to_json(*a)
end