本文整理汇总了Golang中github.com/juju/juju/agent.NewAgentConfig函数的典型用法代码示例。如果您正苦于以下问题:Golang NewAgentConfig函数的具体用法?Golang NewAgentConfig怎么用?Golang NewAgentConfig使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了NewAgentConfig函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: primeAgent
// primeAgent writes the configuration file and tools with version vers
// for an agent with the given entity name. It returns the agent's
// configuration and the current tools.
func (s *agentSuite) primeAgent(c *gc.C, tag, password string, vers version.Binary) (agent.ConfigSetterWriter, *coretools.Tools) {
stor := s.Conn.Environ.Storage()
agentTools := envtesting.PrimeTools(c, stor, s.DataDir(), vers)
err := envtools.MergeAndWriteMetadata(stor, coretools.List{agentTools}, envtools.DoNotWriteMirrors)
c.Assert(err, gc.IsNil)
tools1, err := agenttools.ChangeAgentTools(s.DataDir(), tag, vers)
c.Assert(err, gc.IsNil)
c.Assert(tools1, gc.DeepEquals, agentTools)
stateInfo := s.StateInfo(c)
apiInfo := s.APIInfo(c)
conf, err := agent.NewAgentConfig(
agent.AgentConfigParams{
DataDir: s.DataDir(),
Tag: tag,
UpgradedToVersion: vers.Number,
Password: password,
Nonce: state.BootstrapNonce,
StateAddresses: stateInfo.Addrs,
APIAddresses: apiInfo.Addrs,
CACert: stateInfo.CACert,
})
conf.SetPassword(password)
c.Assert(conf.Write(), gc.IsNil)
s.primeAPIHostPorts(c)
return conf, agentTools
}
开发者ID:rogpeppe,项目名称:juju,代码行数:30,代码来源:agent_test.go
示例2: SetUpTest
func (s *RebootSuite) SetUpTest(c *gc.C) {
var err error
s.JujuConnSuite.SetUpTest(c)
testing.PatchExecutableAsEchoArgs(c, s, rebootBin)
s.PatchEnvironment("TEMP", c.MkDir())
s.tmpDir = c.MkDir()
s.rebootScriptName = "juju-reboot-script"
s.PatchValue(reboot.TmpFile, func() (*os.File, error) {
script := s.rebootScript(c)
return os.Create(script)
})
s.mgoInst.EnableAuth = true
err = s.mgoInst.Start(coretesting.Certs)
c.Assert(err, jc.ErrorIsNil)
configParams := agent.AgentConfigParams{
Paths: agent.Paths{DataDir: c.MkDir()},
Tag: names.NewMachineTag("0"),
UpgradedToVersion: version.Current,
StateAddresses: []string{s.mgoInst.Addr()},
CACert: coretesting.CACert,
Password: "fake",
Model: s.State.ModelTag(),
}
s.st, _ = s.OpenAPIAsNewMachine(c)
s.acfg, err = agent.NewAgentConfig(configParams)
c.Assert(err, jc.ErrorIsNil)
}
开发者ID:exekias,项目名称:juju,代码行数:31,代码来源:reboot_test.go
示例3: PrimeAgentVersion
// PrimeAgentVersion writes the configuration file and tools with version
// vers for an agent with the given entity name. It returns the agent's
// configuration and the current tools.
func (s *AgentSuite) PrimeAgentVersion(c *gc.C, tag names.Tag, password string, vers version.Binary) (agent.ConfigSetterWriter, *coretools.Tools) {
c.Logf("priming agent %s", tag.String())
stor, err := filestorage.NewFileStorageWriter(c.MkDir())
c.Assert(err, jc.ErrorIsNil)
agentTools := envtesting.PrimeTools(c, stor, s.DataDir(), "released", vers)
err = envtools.MergeAndWriteMetadata(stor, "released", "released", coretools.List{agentTools}, envtools.DoNotWriteMirrors)
tools1, err := agenttools.ChangeAgentTools(s.DataDir(), tag.String(), vers)
c.Assert(err, jc.ErrorIsNil)
c.Assert(tools1, gc.DeepEquals, agentTools)
stateInfo := s.MongoInfo(c)
apiInfo := s.APIInfo(c)
paths := agent.DefaultPaths
paths.DataDir = s.DataDir()
conf, err := agent.NewAgentConfig(
agent.AgentConfigParams{
Paths: paths,
Tag: tag,
UpgradedToVersion: vers.Number,
Password: password,
Nonce: agent.BootstrapNonce,
StateAddresses: stateInfo.Addrs,
APIAddresses: apiInfo.Addrs,
CACert: stateInfo.CACert,
Model: apiInfo.ModelTag,
})
c.Assert(err, jc.ErrorIsNil)
conf.SetPassword(password)
c.Assert(conf.Write(), gc.IsNil)
s.primeAPIHostPorts(c)
return conf, agentTools
}
开发者ID:pmatulis,项目名称:juju,代码行数:35,代码来源:agent.go
示例4: SetUpTest
func (s *lxcBrokerSuite) SetUpTest(c *gc.C) {
if runtime.GOOS == "windows" {
c.Skip("Skipping lxc tests on windows")
}
s.lxcSuite.SetUpTest(c)
var err error
s.agentConfig, err = agent.NewAgentConfig(
agent.AgentConfigParams{
Paths: agent.NewPathsWithDefaults(agent.Paths{DataDir: "/not/used/here"}),
Tag: names.NewMachineTag("1"),
UpgradedToVersion: jujuversion.Current,
Password: "dummy-secret",
Nonce: "nonce",
APIAddresses: []string{"10.0.0.1:1234"},
CACert: coretesting.CACert,
Model: coretesting.ModelTag,
})
c.Assert(err, jc.ErrorIsNil)
managerConfig := container.ManagerConfig{
container.ConfigName: "juju",
"log-dir": c.MkDir(),
"use-clone": "false",
}
s.api = NewFakeAPI()
s.broker, err = provisioner.NewLxcBroker(s.api, s.agentConfig, managerConfig, nil, false, 0)
c.Assert(err, jc.ErrorIsNil)
}
开发者ID:AlexisBruemmer,项目名称:juju,代码行数:27,代码来源:lxc-broker_test.go
示例5: SetUpTest
func (s *lxdBrokerSuite) SetUpTest(c *gc.C) {
s.BaseSuite.SetUpTest(c)
if runtime.GOOS == "windows" {
c.Skip("Skipping lxd tests on windows")
}
// To isolate the tests from the host's architecture, we override it here.
s.PatchValue(&arch.HostArch, func() string { return arch.AMD64 })
var err error
s.agentConfig, err = agent.NewAgentConfig(
agent.AgentConfigParams{
Paths: agent.NewPathsWithDefaults(agent.Paths{DataDir: "/not/used/here"}),
Tag: names.NewMachineTag("1"),
UpgradedToVersion: jujuversion.Current,
Password: "dummy-secret",
Nonce: "nonce",
APIAddresses: []string{"10.0.0.1:1234"},
CACert: coretesting.CACert,
Controller: coretesting.ControllerTag,
Model: coretesting.ModelTag,
})
c.Assert(err, jc.ErrorIsNil)
s.api = NewFakeAPI()
s.manager = &fakeContainerManager{}
s.broker, err = provisioner.NewLxdBroker(s.api, s.manager, s.agentConfig)
c.Assert(err, jc.ErrorIsNil)
}
开发者ID:bac,项目名称:juju,代码行数:28,代码来源:lxd-broker_test.go
示例6: AgentConfig
func (cfg *InstanceConfig) AgentConfig(
tag names.Tag,
toolsVersion version.Number,
) (agent.ConfigSetter, error) {
// TODO for HAState: the stateHostAddrs and apiHostAddrs here assume that
// if the instance is a stateServer then to use localhost. This may be
// sufficient, but needs thought in the new world order.
var password string
if cfg.MongoInfo == nil {
password = cfg.APIInfo.Password
} else {
password = cfg.MongoInfo.Password
}
configParams := agent.AgentConfigParams{
DataDir: cfg.DataDir,
LogDir: cfg.LogDir,
Jobs: cfg.Jobs,
Tag: tag,
UpgradedToVersion: toolsVersion,
Password: password,
Nonce: cfg.MachineNonce,
StateAddresses: cfg.stateHostAddrs(),
APIAddresses: cfg.ApiHostAddrs(),
CACert: cfg.MongoInfo.CACert,
Values: cfg.AgentEnvironment,
PreferIPv6: cfg.PreferIPv6,
Environment: cfg.APIInfo.EnvironTag,
}
if !cfg.Bootstrap {
return agent.NewAgentConfig(configParams)
}
return agent.NewStateMachineConfig(configParams, *cfg.StateServingInfo)
}
开发者ID:Pankov404,项目名称:juju,代码行数:33,代码来源:instancecfg.go
示例7: TestAPIInfoDoesntAddLocalhostWhenNoServingInfo
func (*suite) TestAPIInfoDoesntAddLocalhostWhenNoServingInfo(c *gc.C) {
attrParams := attributeParams
conf, err := agent.NewAgentConfig(attrParams)
c.Assert(err, gc.IsNil)
apiinfo := conf.APIInfo()
c.Assert(apiinfo.Addrs, gc.DeepEquals, attrParams.APIAddresses)
}
开发者ID:rogpeppe,项目名称:juju,代码行数:7,代码来源:agent_test.go
示例8: TestStateServingInfoNotAvailable
func (*suite) TestStateServingInfoNotAvailable(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
_, available := conf.StateServingInfo()
c.Assert(available, jc.IsFalse)
}
开发者ID:exekias,项目名称:juju,代码行数:7,代码来源:agent_test.go
示例9: TestSetAPIHostPorts
func (*suite) TestSetAPIHostPorts(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
addrs, err := conf.APIAddresses()
c.Assert(err, jc.ErrorIsNil)
c.Assert(addrs, gc.DeepEquals, attributeParams.APIAddresses)
// The first cloud-local address for each server is used,
// else if there are none then the first public- or unknown-
// scope address.
//
// If a server has only machine-local addresses, or none
// at all, then it will be excluded.
server1 := network.NewAddresses("0.1.2.3", "0.1.2.4", "zeroonetwothree")
server1[0].Scope = network.ScopeCloudLocal
server1[1].Scope = network.ScopeCloudLocal
server1[2].Scope = network.ScopePublic
server2 := network.NewAddresses("127.0.0.1")
server2[0].Scope = network.ScopeMachineLocal
server3 := network.NewAddresses("0.1.2.5", "zeroonetwofive")
server3[0].Scope = network.ScopeUnknown
server3[1].Scope = network.ScopeUnknown
conf.SetAPIHostPorts([][]network.HostPort{
network.AddressesWithPort(server1, 123),
network.AddressesWithPort(server2, 124),
network.AddressesWithPort(server3, 125),
})
addrs, err = conf.APIAddresses()
c.Assert(err, jc.ErrorIsNil)
c.Assert(addrs, gc.DeepEquals, []string{"0.1.2.3:123", "0.1.2.5:125"})
}
开发者ID:ktsakalozos,项目名称:juju,代码行数:32,代码来源:agent_test.go
示例10: TestSetOldPassword
func (*suite) TestSetOldPassword(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
c.Assert(conf.OldPassword(), gc.Equals, attributeParams.Password)
conf.SetOldPassword("newoldpassword")
c.Assert(conf.OldPassword(), gc.Equals, "newoldpassword")
}
开发者ID:exekias,项目名称:juju,代码行数:8,代码来源:agent_test.go
示例11: TestSetCACert
func (*suite) TestSetCACert(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
c.Assert(conf.CACert(), gc.Equals, "ca cert")
conf.SetCACert("new ca cert")
c.Assert(conf.CACert(), gc.Equals, "new ca cert")
}
开发者ID:kat-co,项目名称:juju,代码行数:8,代码来源:agent_test.go
示例12: TestAPIInfoDoesntAddLocalhostWhenNoServingInfoPreferIPv6On
func (*suite) TestAPIInfoDoesntAddLocalhostWhenNoServingInfoPreferIPv6On(c *gc.C) {
attrParams := attributeParams
attrParams.PreferIPv6 = true
conf, err := agent.NewAgentConfig(attrParams)
c.Assert(err, jc.ErrorIsNil)
apiinfo, ok := conf.APIInfo()
c.Assert(ok, jc.IsTrue)
c.Assert(apiinfo.Addrs, gc.DeepEquals, attrParams.APIAddresses)
}
开发者ID:exekias,项目名称:juju,代码行数:9,代码来源:agent_test.go
示例13: TestSetUpgradedToVersion
func (*suite) TestSetUpgradedToVersion(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
c.Assert(conf.UpgradedToVersion(), gc.Equals, version.Current)
expectVers := version.MustParse("3.4.5")
conf.SetUpgradedToVersion(expectVers)
c.Assert(conf.UpgradedToVersion(), gc.Equals, expectVers)
}
开发者ID:exekias,项目名称:juju,代码行数:10,代码来源:agent_test.go
示例14: TestAttributes
func (*suite) TestAttributes(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, gc.IsNil)
c.Assert(conf.DataDir(), gc.Equals, "/data/dir")
c.Assert(conf.SystemIdentityPath(), gc.Equals, "/data/dir/system-identity")
c.Assert(conf.Tag(), gc.Equals, "omg")
c.Assert(conf.Dir(), gc.Equals, "/data/dir/agents/omg")
c.Assert(conf.Nonce(), gc.Equals, "a nonce")
c.Assert(conf.UpgradedToVersion(), jc.DeepEquals, version.Current.Number)
}
开发者ID:rogpeppe,项目名称:juju,代码行数:10,代码来源:agent_test.go
示例15: TestInitializeStateFailsSecondTime
func (s *bootstrapSuite) TestInitializeStateFailsSecondTime(c *gc.C) {
dataDir := c.MkDir()
configParams := agent.AgentConfigParams{
Paths: agent.Paths{DataDir: dataDir},
Tag: names.NewMachineTag("0"),
UpgradedToVersion: jujuversion.Current,
StateAddresses: []string{s.mgoInst.Addr()},
CACert: testing.CACert,
Password: testing.DefaultMongoPassword,
Model: testing.ModelTag,
}
cfg, err := agent.NewAgentConfig(configParams)
c.Assert(err, jc.ErrorIsNil)
cfg.SetStateServingInfo(params.StateServingInfo{
APIPort: 5555,
StatePort: s.mgoInst.Port(),
Cert: "foo",
PrivateKey: "bar",
SharedSecret: "baz",
SystemIdentity: "qux",
})
expectHW := instance.MustParseHardware("mem=2048M")
mcfg := agentbootstrap.BootstrapMachineConfig{
BootstrapConstraints: constraints.MustParse("mem=1024M"),
Jobs: []multiwatcher.MachineJob{multiwatcher.JobManageModel},
InstanceId: "i-bootstrap",
Characteristics: expectHW,
}
envAttrs := dummy.SampleConfig().Delete("admin-secret").Merge(testing.Attrs{
"agent-version": jujuversion.Current.String(),
})
envCfg, err := config.New(config.NoDefaults, envAttrs)
c.Assert(err, jc.ErrorIsNil)
hostedModelConfigAttrs := map[string]interface{}{
"name": "hosted",
"uuid": utils.MustNewUUID().String(),
}
adminUser := names.NewLocalUserTag("agent-admin")
st, _, err := agentbootstrap.InitializeState(
adminUser, cfg, envCfg, hostedModelConfigAttrs, mcfg,
mongo.DefaultDialOpts(), state.Policy(nil),
)
c.Assert(err, jc.ErrorIsNil)
st.Close()
st, _, err = agentbootstrap.InitializeState(adminUser, cfg, envCfg, nil, mcfg, mongo.DefaultDialOpts(), environs.NewStatePolicy())
if err == nil {
st.Close()
}
c.Assert(err, gc.ErrorMatches, "failed to initialize mongo admin user: cannot set admin password: not authorized .*")
}
开发者ID:AlexisBruemmer,项目名称:juju,代码行数:54,代码来源:bootstrap_test.go
示例16: TestAttributes
func (*suite) TestAttributes(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
c.Assert(conf.DataDir(), gc.Equals, "/data/dir")
compareSystemIdentityPath := filepath.FromSlash("/data/dir/system-identity")
systemIdentityPath := filepath.FromSlash(conf.SystemIdentityPath())
c.Assert(systemIdentityPath, gc.Equals, compareSystemIdentityPath)
c.Assert(conf.Tag(), gc.Equals, names.NewMachineTag("1"))
c.Assert(conf.Dir(), gc.Equals, "/data/dir/agents/machine-1")
c.Assert(conf.Nonce(), gc.Equals, "a nonce")
c.Assert(conf.UpgradedToVersion(), jc.DeepEquals, version.Current)
}
开发者ID:exekias,项目名称:juju,代码行数:12,代码来源:agent_test.go
示例17: TestWriteAndRead
func (*suite) TestWriteAndRead(c *gc.C) {
testParams := attributeParams
testParams.Paths.DataDir = c.MkDir()
testParams.Paths.LogDir = c.MkDir()
conf, err := agent.NewAgentConfig(testParams)
c.Assert(err, jc.ErrorIsNil)
c.Assert(conf.Write(), gc.IsNil)
reread, err := agent.ReadConfig(agent.ConfigPath(conf.DataDir(), conf.Tag()))
c.Assert(err, jc.ErrorIsNil)
c.Assert(reread, jc.DeepEquals, conf)
}
开发者ID:exekias,项目名称:juju,代码行数:12,代码来源:agent_test.go
示例18: TestAPIAddressesCannotWriteBack
func (s *suite) TestAPIAddressesCannotWriteBack(c *gc.C) {
conf, err := agent.NewAgentConfig(attributeParams)
c.Assert(err, jc.ErrorIsNil)
value, err := conf.APIAddresses()
c.Assert(err, jc.ErrorIsNil)
c.Assert(value, jc.DeepEquals, []string{"localhost:1235"})
value[0] = "invalidAdr"
//Check out change hasn't gone back into the internals
newValue, err := conf.APIAddresses()
c.Assert(err, jc.ErrorIsNil)
c.Assert(newValue, jc.DeepEquals, []string{"localhost:1235"})
}
开发者ID:exekias,项目名称:juju,代码行数:12,代码来源:agent_test.go
示例19: TestNewAgentConfig
func (*suite) TestNewAgentConfig(c *gc.C) {
for i, test := range agentConfigTests {
c.Logf("%v: %s", i, test.about)
_, err := agent.NewAgentConfig(test.params)
if test.checkErr == "" {
c.Assert(err, gc.IsNil)
} else {
c.Assert(err, gc.ErrorMatches, test.checkErr)
}
}
}
开发者ID:rogpeppe,项目名称:juju,代码行数:12,代码来源:agent_test.go
示例20: TestNewAgentConfig
func (*suite) TestNewAgentConfig(c *gc.C) {
for i, test := range agentConfigTests {
c.Logf("%v: %s", i, test.about)
config, err := agent.NewAgentConfig(test.params)
if test.checkErr == "" {
c.Assert(err, jc.ErrorIsNil)
if test.inspectConfig != nil {
test.inspectConfig(c, config)
}
} else {
c.Assert(err, gc.ErrorMatches, test.checkErr)
}
}
}
开发者ID:exekias,项目名称:juju,代码行数:14,代码来源:agent_test.go
注:本文中的github.com/juju/juju/agent.NewAgentConfig函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论