func (s *destroySystemSuite) SetUpTest(c *gc.C) { s.JujuConnSuite.SetUpTest(c) s.BlockHelper = commontesting.NewBlockHelper(s.APIState) s.AddCleanup(func(*gc.C) { s.BlockHelper.Close() }) resources := common.NewResources() s.AddCleanup(func(_ *gc.C) { resources.StopAll() }) authoriser := apiservertesting.FakeAuthorizer{ Tag: s.AdminUserTag(c), } systemManager, err := systemmanager.NewSystemManagerAPI(s.State, resources, authoriser) c.Assert(err, jc.ErrorIsNil) s.systemManager = systemManager s.otherEnvOwner = names.NewUserTag("jess@dummy") s.otherState = factory.NewFactory(s.State).MakeEnvironment(c, &factory.EnvParams{ Name: "dummytoo", Owner: s.otherEnvOwner, Prepare: true, ConfigAttrs: testing.Attrs{ "state-server": false, }, }) s.AddCleanup(func(c *gc.C) { s.otherState.Close() }) s.otherEnvUUID = s.otherState.EnvironUUID() }
func (s *systemManagerSuite) TestNewAPIRefusesNonClient(c *gc.C) { anAuthoriser := apiservertesting.FakeAuthorizer{ Tag: names.NewUnitTag("mysql/0"), } endPoint, err := systemmanager.NewSystemManagerAPI(s.State, s.resources, anAuthoriser) c.Assert(endPoint, gc.IsNil) c.Assert(err, gc.ErrorMatches, "permission denied") }
func (s *systemManagerSuite) TestNewAPIRefusesNonAdmins(c *gc.C) { user := s.Factory.MakeUser(c, &factory.UserParams{NoEnvUser: true}) anAuthoriser := apiservertesting.FakeAuthorizer{ Tag: user.Tag(), } endPoint, err := systemmanager.NewSystemManagerAPI(s.State, s.resources, anAuthoriser) c.Assert(endPoint, gc.IsNil) c.Assert(err, gc.ErrorMatches, "permission denied") }
func (s *systemManagerSuite) TestEnvironmentConfigFromNonStateServer(c *gc.C) { st := s.Factory.MakeEnvironment(c, &factory.EnvParams{ Name: "test"}) defer st.Close() authorizer := &apiservertesting.FakeAuthorizer{Tag: s.AdminUserTag(c)} systemManager, err := systemmanager.NewSystemManagerAPI(st, common.NewResources(), authorizer) c.Assert(err, jc.ErrorIsNil) env, err := systemManager.EnvironmentConfig() c.Assert(err, jc.ErrorIsNil) c.Assert(env.Config["name"], gc.Equals, "dummyenv") }
func (s *systemManagerSuite) SetUpTest(c *gc.C) { s.JujuConnSuite.SetUpTest(c) s.resources = common.NewResources() s.AddCleanup(func(_ *gc.C) { s.resources.StopAll() }) s.authorizer = apiservertesting.FakeAuthorizer{ Tag: s.AdminUserTag(c), } systemManager, err := systemmanager.NewSystemManagerAPI(s.State, s.resources, s.authorizer) c.Assert(err, jc.ErrorIsNil) s.systemManager = systemManager loggo.GetLogger("juju.apiserver.systemmanager").SetLogLevel(loggo.TRACE) }