~ubuntu-branches/ubuntu/saucy/juju-core/saucy-proposed

« back to all changes in this revision

Viewing changes to src/launchpad.net/juju-core/worker/machiner/machiner.go

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2013-07-11 17:18:27 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20130711171827-vjqkg40r0dlf7ys2
Tags: 1.11.2-0ubuntu1
* New upstream release.
* Make juju-core the default juju (LP: #1190634):
  - d/control: Add virtual package juju -> juju-core.
  - d/juju-core.postinst.in: Bump priority of alternatives over that of
    python juju packages.
* Enable for all architectures (LP: #1172505):
  - d/control: Version BD on golang-go to >= 2:1.1.1 to ensure CGO
    support for non-x86 archs, make juju-core Arch: any.
  - d/README.source: Dropped - no longer required.
* d/watch: Updated for new upstream tarball naming.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright 2012, 2013 Canonical Ltd.
 
2
// Licensed under the AGPLv3, see LICENCE file for details.
 
3
 
1
4
package machiner
2
5
 
3
6
import (
4
7
        "fmt"
 
8
        "launchpad.net/juju-core/errors"
5
9
        "launchpad.net/juju-core/log"
6
10
        "launchpad.net/juju-core/state"
7
11
        "launchpad.net/juju-core/state/api/params"
33
37
        return fmt.Sprintf("machiner %s", mr.id)
34
38
}
35
39
 
 
40
func (mr *Machiner) Kill() {
 
41
        mr.tomb.Kill(nil)
 
42
}
 
43
 
36
44
func (mr *Machiner) Stop() error {
37
45
        mr.tomb.Kill(nil)
38
46
        return mr.tomb.Wait()
45
53
func (mr *Machiner) loop() error {
46
54
        // Find which machine we're responsible for.
47
55
        m, err := mr.st.Machine(mr.id)
48
 
        if state.IsNotFound(err) {
 
56
        if errors.IsNotFoundError(err) {
49
57
                return worker.ErrTerminateAgent
50
58
        } else if err != nil {
51
59
                return err
72
80
                case <-mr.tomb.Dying():
73
81
                        return tomb.ErrDying
74
82
                case <-w.Changes():
75
 
                        if err := m.Refresh(); state.IsNotFound(err) {
 
83
                        if err := m.Refresh(); errors.IsNotFoundError(err) {
76
84
                                return worker.ErrTerminateAgent
77
85
                        } else if err != nil {
78
86
                                return err