本文整理匯總了Golang中github.com/juju/juju/provider/lxd/lxdclient.Config.WithDefaults方法的典型用法代碼示例。如果您正苦於以下問題:Golang Config.WithDefaults方法的具體用法?Golang Config.WithDefaults怎麽用?Golang Config.WithDefaults使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/juju/juju/provider/lxd/lxdclient.Config
的用法示例。
在下文中一共展示了Config.WithDefaults方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: TestWithDefaultsOkay
func (s *configSuite) TestWithDefaultsOkay(c *gc.C) {
cfg := lxdclient.Config{
Namespace: "my-ns",
Dirname: "some-dir",
Remote: s.remote,
}
updated, err := cfg.WithDefaults()
c.Assert(err, jc.ErrorIsNil)
c.Check(updated, jc.DeepEquals, cfg)
}
示例2: TestWithDefaultsMissingRemote
func (s *configSuite) TestWithDefaultsMissingRemote(c *gc.C) {
cfg := lxdclient.Config{
Namespace: "my-ns",
Dirname: "some-dir",
}
updated, err := cfg.WithDefaults()
c.Assert(err, jc.ErrorIsNil)
c.Check(updated, jc.DeepEquals, lxdclient.Config{
Namespace: "my-ns",
Dirname: "some-dir",
Remote: lxdclient.Local,
})
}
示例3: TestWithDefaultsMissingDirname
func (s *configSuite) TestWithDefaultsMissingDirname(c *gc.C) {
cfg := lxdclient.Config{
Namespace: "my-ns",
Dirname: "",
Remote: s.remote,
}
updated, err := cfg.WithDefaults()
c.Assert(err, jc.ErrorIsNil)
c.Check(updated, jc.DeepEquals, lxdclient.Config{
Namespace: "my-ns",
// TODO(ericsnow) This will change on Windows once the LXD
// code is cross-platform.
Dirname: "/.config/lxc", // IsolationSuite sets $HOME to "".
Remote: s.remote,
})
}
示例4: TestWithDefaultsMissingDirname
func (s *configSuite) TestWithDefaultsMissingDirname(c *gc.C) {
cfg := lxdclient.Config{
Namespace: "my-ns",
Dirname: "",
Remote: s.remote,
}
updated, err := cfg.WithDefaults()
c.Assert(err, jc.ErrorIsNil)
c.Logf("path.Clean of dirname is %s (dirname is %s)", path.Clean(updated.Dirname), updated.Dirname)
c.Check(updated, jc.DeepEquals, lxdclient.Config{
Namespace: "my-ns",
// TODO(ericsnow) This will change on Windows once the LXD
// code is cross-platform.
Dirname: "/.config/lxc",
Remote: s.remote,
})
}
示例5: clientConfig
// clientConfig builds a LXD Config based on the env config and returns it.
func (c *environConfig) clientConfig() (lxdclient.Config, error) {
remote := lxdclient.Remote{
Name: "juju-remote",
Host: c.remoteURL(),
}
if c.clientCert() != "" {
certPEM := []byte(c.clientCert())
keyPEM := []byte(c.clientKey())
cert := lxdclient.NewCert(certPEM, keyPEM)
cert.Name = fmt.Sprintf("juju cert for env %q", c.Name())
remote.Cert = &cert
}
cfg := lxdclient.Config{
Namespace: c.namespace(),
Dirname: lxdclient.ConfigPath("juju-" + c.namespace()),
Remote: remote,
}
cfg, err := cfg.WithDefaults()
if err != nil {
return cfg, errors.Trace(err)
}
return cfg, nil
}