本文整理匯總了Golang中launchpad/net/juju-core/state.Unit.Life方法的典型用法代碼示例。如果您正苦於以下問題:Golang Unit.Life方法的具體用法?Golang Unit.Life怎麽用?Golang Unit.Life使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類launchpad/net/juju-core/state.Unit
的用法示例。
在下文中一共展示了Unit.Life方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: remove
// remove will remove the supplied unit from state. It will panic if it
// observes inconsistent internal state.
func (d *Deployer) remove(unit *state.Unit) error {
if d.deployed.Contains(unit.Name()) {
panic("must not remove a deployed unit")
} else if unit.Life() == state.Alive {
panic("must not remove an Alive unit")
}
logger.Infof("removing unit %q", unit)
if err := unit.EnsureDead(); err != nil {
return err
}
return unit.Remove()
}
示例2: remove
// remove will remove the supplied unit from state. It will panic if it
// observes inconsistent internal state.
func (d *Deployer) remove(unit *state.Unit) error {
if d.deployed[unit.Name()] {
panic("must not remove a deployed unit")
} else if unit.Life() == state.Alive {
panic("must not remove an Alive unit")
}
log.Printf("worker/deployer: removing unit %q", unit)
if err := unit.EnsureDead(); err != nil {
return err
}
service, err := unit.Service()
if err != nil {
return err
}
return service.RemoveUnit(unit)
}
示例3: assertUnitLife
func assertUnitLife(c *C, unit *state.Unit, life state.Life) {
c.Assert(unit.Refresh(), IsNil)
c.Assert(unit.Life(), Equals, life)
}