本文整理汇总了Golang中github.com/juju/juju/jujuclient.ControllerStore.UpdateController方法的典型用法代码示例。如果您正苦于以下问题:Golang ControllerStore.UpdateController方法的具体用法?Golang ControllerStore.UpdateController怎么用?Golang ControllerStore.UpdateController使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/juju/juju/jujuclient.ControllerStore
的用法示例。
在下文中一共展示了ControllerStore.UpdateController方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: updateControllerDetailsFromLogin
func updateControllerDetailsFromLogin(
store jujuclient.ControllerStore,
controllerName string, controllerDetails *jujuclient.ControllerDetails,
params UpdateControllerParams,
) error {
// Get the new endpoint addresses.
addrs, unresolvedAddrs, addrsChanged := PrepareEndpointsForCaching(*controllerDetails, params.CurrentHostPorts, params.AddrConnectedTo...)
agentChanged := params.AgentVersion != controllerDetails.AgentVersion
if !addrsChanged && !agentChanged && params.ModelCount == nil && params.MachineCount == nil && params.ControllerMachineCount == nil {
return nil
}
// Write the new controller data.
if addrsChanged {
controllerDetails.APIEndpoints = addrs
controllerDetails.UnresolvedAPIEndpoints = unresolvedAddrs
}
if agentChanged {
controllerDetails.AgentVersion = params.AgentVersion
}
if params.ModelCount != nil {
controllerDetails.ModelCount = params.ModelCount
}
if params.MachineCount != nil {
controllerDetails.MachineCount = params.MachineCount
}
if params.ControllerMachineCount != nil {
controllerDetails.ControllerMachineCount = *params.ControllerMachineCount
}
err := store.UpdateController(controllerName, *controllerDetails)
return errors.Trace(err)
}
示例2: setEndpointAddressAndHostname
func setEndpointAddressAndHostname(c *gc.C, store jujuclient.ControllerStore, addr, host string) {
// Populate the controller details with known address and hostname.
details, err := store.ControllerByName("local.my-controller")
c.Assert(err, jc.ErrorIsNil)
details.APIEndpoints = []string{addr}
details.UnresolvedAPIEndpoints = []string{host}
err = store.UpdateController("local.my-controller", *details)
c.Assert(err, jc.ErrorIsNil)
}
示例3: updateControllerAddresses
func updateControllerAddresses(
store jujuclient.ControllerStore,
controllerName string, controllerDetails *jujuclient.ControllerDetails,
currentHostPorts [][]network.HostPort, addrConnectedTo ...network.HostPort,
) error {
// Get the new endpoint addresses.
addrs, hosts, addrsChanged := PrepareEndpointsForCaching(*controllerDetails, currentHostPorts, addrConnectedTo...)
if !addrsChanged {
return nil
}
// Write the new controller data.
controllerDetails.UnresolvedAPIEndpoints = hosts
controllerDetails.APIEndpoints = addrs
err := store.UpdateController(controllerName, *controllerDetails)
return errors.Trace(err)
}