':param list local_states: A list of results to produce from
``discover_state``.  Each call to ``discover_state`` pops the first
element from this list and uses it as its result.  If the element
is an exception, it is raised.  Otherwise it must be a
``Deferred`` that resolves to a ``NodeState``. This ``IDeployer``
always returns a ``NodeLocalState`` from ``discover_state``.'

def __init__(self, hostname, local_states, calculated_actions):

    self.node_uuid = ip_to_uuid(hostname)
    self.hostname = hostname
    self.local_states = local_states
    self.calculated_actions = calculated_actions
    self.calculate_inputs = []
    self.discover_inputs = []
