github.com/cloudbase/juju-core@v0.0.0-20140504232958-a7271ac7912f/tools/tools.go (about)

     1  // Copyright 2013 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package tools
     5  
     6  import (
     7  	"github.com/juju/loggo"
     8  
     9  	"launchpad.net/juju-core/version"
    10  )
    11  
    12  var logger = loggo.GetLogger("juju.tools")
    13  
    14  // Tools represents the location and version of a tools tarball.
    15  type Tools struct {
    16  	Version version.Binary `json:"version"`
    17  	URL     string         `json:"url"`
    18  	SHA256  string         `json:"sha256,omitempty"`
    19  	Size    int64          `json:"size"`
    20  }
    21  
    22  // HasTools instances can be asked for a tools list.
    23  type HasTools interface {
    24  	Tools() List
    25  }