func (s *baseProviderSuite) SetUpTest(c *gc.C) { s.LoggingSuite.SetUpTest(c) s.TestSuite.SetUpTest(c) s.home = testing.MakeFakeHomeNoEnvironments(c, "test") loggo.GetLogger("juju.environs.local").SetLogLevel(loggo.TRACE) s.restore = local.MockAddressForInterface() }
func (suite) TestConfig(c *C) { defer testing.MakeFakeHomeNoEnvironments(c, "only", "valid", "one", "two").Restore() for i, t := range configTests { c.Logf("running test %v", i) es, err := environs.ReadEnvironsBytes([]byte(t.env)) c.Assert(err, IsNil) t.check(c, es) } }
func (*BootstrapSuite) TestMissingEnvironment(c *C) { defer testing.MakeFakeHomeNoEnvironments(c, "empty").Restore() ctx := testing.Context(c) code := cmd.Main(&BootstrapCommand{}, ctx, nil) c.Check(code, Equals, 1) errStr := ctx.Stderr.(*bytes.Buffer).String() strippedErr := strings.Replace(errStr, "\n", "", -1) c.Assert(strippedErr, Matches, ".*No juju environment configuration file exists.*") }
func (suite) TestInvalidEnv(c *C) { defer testing.MakeFakeHomeNoEnvironments(c, "only").Restore() for i, t := range invalidEnvTests { c.Logf("running test %v", i) es, err := environs.ReadEnvironsBytes([]byte(t.env)) c.Check(err, IsNil) e, err := es.Open(t.name) c.Check(err, ErrorMatches, t.err) c.Check(e, IsNil) } }
func (s *MainSuite) TestActualRunJujuArgsAfterCommand(c *C) { defer testing.MakeFakeHomeNoEnvironments(c, "one").Restore() // Check global args work when specified after command msg := breakJuju(c, "Bootstrap") logpath := filepath.Join(c.MkDir(), "log") out := badrun(c, 1, "bootstrap", "--log-file", logpath, "--verbose", "--debug") c.Assert(out, Equals, "error: "+msg+"\n") content, err := ioutil.ReadFile(logpath) c.Assert(err, IsNil) fullmsg := fmt.Sprintf(`(.|\n)*ERROR .* command failed: %s\n`, msg) c.Assert(string(content), Matches, fullmsg) }
func (suite) TestNamedConfigFile(c *C) { defer testing.MakeFakeHomeNoEnvironments(c, "only").Restore() env := ` environments: only: type: dummy state-server: false authorized-keys: i-am-a-key ` path := filepath.Join(c.MkDir(), "a-file") outfile, err := environs.WriteEnvirons(path, env) c.Assert(err, IsNil) c.Assert(path, Equals, outfile) es, err := environs.ReadEnvirons(path) c.Assert(err, IsNil) e, err := es.Open("") c.Assert(err, IsNil) c.Assert(e.Name(), Equals, "only") }
func (suite) TestBootstrapConfig(c *C) { defer testing.MakeFakeHomeNoEnvironments(c, "bladaam").Restore() cfg, err := config.New(map[string]interface{}{ "name": "bladaam", "type": "dummy", "state-server": false, "admin-secret": "highly", "secret": "um", "authorized-keys": "i-am-a-key", "ca-cert": testing.CACert, "ca-private-key": testing.CAKey, "agent-version": "1.2.3", }) c.Assert(err, IsNil) cfg1, err := environs.BootstrapConfig(cfg) c.Assert(err, IsNil) expect := cfg.AllAttrs() delete(expect, "secret") expect["admin-secret"] = "" expect["ca-private-key"] = "" c.Assert(cfg1.AllAttrs(), DeepEquals, expect) }
func (s *bootstrapSuite) SetUpTest(c *gc.C) { s.LoggingSuite.SetUpTest(c) s.home = testing.MakeFakeHomeNoEnvironments(c, "foo") }