github.com/rogpeppe/juju@v0.0.0-20140613142852-6337964b789e/environs/utils.go (about)

     1  package environs
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/juju/juju/environs/storage"
     7  	"github.com/juju/juju/state"
     8  )
     9  
    10  // GetStorage creates an Environ from the config in state and returns
    11  // its storage interface.
    12  func GetStorage(st *state.State) (storage.Storage, error) {
    13  	envConfig, err := st.EnvironConfig()
    14  	if err != nil {
    15  		return nil, fmt.Errorf("cannot get environment config: %v", err)
    16  	}
    17  	env, err := New(envConfig)
    18  	if err != nil {
    19  		return nil, fmt.Errorf("cannot access environment: %v", err)
    20  	}
    21  	return env.Storage(), nil
    22  }