launchpad.net/~rogpeppe/juju-core/500-errgo-fix@v0.0.0-20140213181702-000000002356/state/apiserver/client/tools.go (about)

     1  // Copyright 2013 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package client
     5  
     6  import (
     7  	"launchpad.net/errgo/errors"
     8  	"launchpad.net/juju-core/environs"
     9  	envtools "launchpad.net/juju-core/environs/tools"
    10  	"launchpad.net/juju-core/tools"
    11  )
    12  
    13  func findInstanceTools(env environs.Environ, series, arch string) (*tools.Tools, error) {
    14  	agentVersion, ok := env.Config().AgentVersion()
    15  	if !ok {
    16  		return nil, errors.Newf("no agent version set in environment configuration")
    17  	}
    18  	possibleTools, err := envtools.FindInstanceTools(env, agentVersion, series, &arch)
    19  	if err != nil {
    20  		return nil, mask(err)
    21  	}
    22  	return possibleTools[0], nil
    23  }