本文整理匯總了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)
}