~rogpeppe/juju-core/azure

« back to all changes in this revision

Viewing changes to agent/interfaces.go

  • Committer: Gustavo Niemeyer
  • Date: 2011-09-26 14:48:45 UTC
  • mto: This revision was merged to the branch mainline in revision 34.
  • Revision ID: gustavo@niemeyer.net-20110926144845-atwp3u6blqngmhel
Bootstrapping store package.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// Copyright 2013 Canonical Ltd.
2
 
// Licensed under the AGPLv3, see LICENCE file for details.
3
 
 
4
 
package agent
5
 
 
6
 
import (
7
 
        "io"
8
 
 
9
 
        "launchpad.net/juju-core/version"
10
 
)
11
 
 
12
 
type Tools struct {
13
 
        version.Binary
14
 
        URL string
15
 
}
16
 
 
17
 
// ToolsManager keeps track of a pool of tools
18
 
type ToolsManager interface {
19
 
 
20
 
        // ReadTools looks in the current storage to see what tools are
21
 
        // available that match the given Binary version.
22
 
        ReadTools(version version.Binary) (*Tools, error)
23
 
 
24
 
        // UnpackTools reads the compressed tarball from the io.Reader and
25
 
        // extracts the tools to be used. tools is used to indicate what exact
26
 
        // version are in the contents of the tarball
27
 
        UnpackTools(tools *Tools, r io.Reader) error
28
 
}