juju/juju — pull request #336 by axw (2014-07-18 04:49:01+00:00)
Title: Change Environ.StateInfo to StateServerInstances

Provider implementations should not have to know
about API or Mongo connection details; this should
be provider-independent. Thus, the StateInfo method
of Environ has been replaced with a method that
returns the set of known state server instances.

Ideally the provider would not need to know about
tracking "state servers" either, but rather have
a means of identifying instances with a tag specified
by Juju.

The local, dummy and manual provider
StateServerInstances methods are updated to return
the trivially known instance IDs without consulting
cloud storage. The other providers have been left
alone, and will be dealt with in future PRs.

This is both abstraction cleanup and a requirement
for moving away from requiring cloud storage. Future
changes will update individual providers to break
the dependency on cloud storage, e.g. by using
instance tagging. This involves updating each provider's
StateServerInstances, as well as changing how Juju
checks if an environment is already bootstrapped.