Beispiel #1
0
    def test_create(self):
        user = self.users.get(id="1")
        role = self.roles.first()

        api.tenant_list(IgnoreArg(), admin=True).AndReturn(self.tenants.list())
        api.user_create(IgnoreArg(), user.name, user.email, user.password,
                        self.tenant.id, True).AndReturn(user)
        api.keystone.role_list(IgnoreArg()).AndReturn(self.roles.list())
        api.keystone.get_default_role(IgnoreArg()).AndReturn(role)
        api.add_tenant_user_role(IgnoreArg(), self.tenant.id, user.id, role.id)

        self.mox.ReplayAll()

        formData = {
            'method': 'CreateUserForm',
            'name': user.name,
            'email': user.email,
            'password': user.password,
            'tenant_id': self.tenant.id,
            'role_id': self.roles.first().id,
            'confirm_password': user.password
        }
        res = self.client.post(USER_CREATE_URL, formData)

        self.assertNoFormErrors(res)
        self.assertMessageCount(success=1)
Beispiel #2
0
    def test_create(self):
        user = self.users.get(id="1")
        role = self.roles.first()

        api.tenant_list(IgnoreArg(), admin=True).AndReturn(self.tenants.list())
        api.user_create(IgnoreArg(), user.name, user.email, user.password, self.tenant.id, True).AndReturn(user)
        api.keystone.role_list(IgnoreArg()).AndReturn(self.roles.list())
        api.keystone.get_default_role(IgnoreArg()).AndReturn(role)
        api.add_tenant_user_role(IgnoreArg(), self.tenant.id, user.id, role.id)

        self.mox.ReplayAll()

        formData = {
            "method": "CreateUserForm",
            "name": user.name,
            "email": user.email,
            "password": user.password,
            "tenant_id": self.tenant.id,
            "role_id": self.roles.first().id,
            "confirm_password": user.password,
        }
        res = self.client.post(USER_CREATE_URL, formData)

        self.assertNoFormErrors(res)
        self.assertMessageCount(success=1)
Beispiel #3
0
    def test_create_user(self):
        user = self.users.get(id="1")
        role = self.roles.first()
        self.mox.StubOutWithMock(api, 'user_create')
        self.mox.StubOutWithMock(api, 'tenant_list')
        self.mox.StubOutWithMock(api.keystone, 'get_default_role')
        self.mox.StubOutWithMock(api, 'add_tenant_user_role')
        api.tenant_list(IgnoreArg(), admin=True).AndReturn(self.tenants.list())
        api.user_create(IgnoreArg(),
                        user.name,
                        user.email,
                        user.password,
                        self.tenant.id,
                        True).AndReturn(user)
        api.keystone.get_default_role(IgnoreArg()).AndReturn(role)
        api.add_tenant_user_role(IgnoreArg(), self.tenant.id, user.id, role.id)
        self.mox.ReplayAll()

        formData = {'method': 'CreateUserForm',
                    'name': user.name,
                    'email': user.email,
                    'password': user.password,
                    'tenant_id': self.tenant.id,
                    'confirm_password': user.password}
        res = self.client.post(USER_CREATE_URL, formData)
        self.assertNoFormErrors(res)
        self.assertMessageCount(success=1)
 def handle(self, request, data):
     try:
         LOG.info('Creating user with name "%s"' % data['name'])
         new_user = api.user_create(request,
                         data['name'],
                         data['email'],
                         data['password'],
                         data['tenant_id'],
                         True)
         messages.success(request,
                          _('User "%s" was successfully created.')
                          % data['name'])
         try:
             default_role = api.keystone.get_default_role(request)
             if default_role:
                 api.add_tenant_user_role(request,
                                          data['tenant_id'],
                                          new_user.id,
                                          default_role.id)
         except:
             exceptions.handle(request,
                               _('Unable to add user to primary project.'))
         return shortcuts.redirect('horizon:syspanel:users:index')
     except:
         exceptions.handle(request, _('Unable to create user.'))
         return shortcuts.redirect('horizon:syspanel:users:index')
Beispiel #5
0
 def handle(self, request, data):
     try:
         LOG.info('Creating user with name "%s"' % data['name'])
         new_user = api.user_create(request,
                         data['name'],
                         data['email'],
                         data['password'],
                         data['tenant_id'],
                         True)
         messages.success(request,
                          _('User "%s" was successfully created.')
                          % data['name'])
         if data['role_id']:
             try:
                 api.add_tenant_user_role(request,
                                          data['tenant_id'],
                                          new_user.id,
                                          data['role_id'])
             except:
                 exceptions.handle(request,
                                   _('Unable to add user'
                                     'to primary project.'))
         return new_user
     except:
         exceptions.handle(request, _('Unable to create user.'))
Beispiel #6
0
    def handle(self, request, data):
        try:
            LOG.info('Creating user with name "%s"' % data['name'])
            new_user = api.user_create(request,
                            data['name'],
                            data['email'],
                            data['password'],
                            data['tenant_id'],
                            True)
            messages.success(request,
                             _('User "%s" was successfully created.')
                             % data['name'])
            try:
                api.role_add_for_tenant_user(
                    request, data['tenant_id'], new_user.id,
                    settings.OPENSTACK_KEYSTONE_DEFAULT_ROLE)
            except Exception, e:
                LOG.exception('Exception while assigning \
                               role to new user: %s' % new_user.id)
                if not hasattr(e, 'message'):
                    e.message = str(e)
                messages.error(request,
                               _('Error assigning role to user: %s')
                               % e.message)

            return shortcuts.redirect('horizon:syspanel:users:index')
Beispiel #7
0
    def test_user_create(self):
        keystoneclient = self.stub_keystoneclient()

        keystoneclient.users = self.mox.CreateMockAnything()
        keystoneclient.users.create(TEST_USERNAME, TEST_PASSWORD, TEST_EMAIL,
                                TEST_TENANT_ID, True).AndReturn(TEST_RETURN)

        self.mox.ReplayAll()

        ret_val = api.user_create(self.request, TEST_USERNAME, TEST_EMAIL,
                                  TEST_PASSWORD, TEST_TENANT_ID, True)

        self.assertIsInstance(ret_val, api.User)
        self.assertEqual(ret_val._apiresource, TEST_RETURN)
Beispiel #8
0
 def handle(self, request, data):
     try:
         LOG.info('Creating user with name "%s"' % data['name'])
         new_user = api.user_create(request, data['name'], data['email'],
                                    data['password'], data['tenant_id'],
                                    True)
         messages.success(
             request,
             _('User "%s" was successfully created.') % data['name'])
         try:
             api.add_tenant_user_role(request, data['tenant_id'],
                                      new_user.id, data['role_id'])
         except:
             exceptions.handle(request,
                               _('Unable to add user to primary project.'))
         return shortcuts.redirect('horizon:syspanel:users:index')
     except:
         exceptions.handle(request, _('Unable to create user.'))
         return shortcuts.redirect('horizon:syspanel:users:index')
Beispiel #9
0
 def handle(self, request, data):
     try:
         LOG.info('Creating user with name "%s"' % data['name'])
         new_user = api.user_create(request, data['name'], data['email'],
                                    data['password'], data['tenant_id'],
                                    True)
         messages.success(
             request,
             _('User "%s" was successfully created.') % data['name'])
         if data['role_id']:
             try:
                 api.add_tenant_user_role(request, data['tenant_id'],
                                          new_user.id, data['role_id'])
             except:
                 exceptions.handle(
                     request, _('Unable to add user'
                                'to primary project.'))
         return new_user
     except:
         exceptions.handle(request, _('Unable to create user.'))
Beispiel #10
0
    def handle(self, request, data):
        try:
            LOG.info('Creating user with name "%s"' % data['name'])
            new_user = api.user_create(request, data['name'], data['email'],
                                       data['password'], data['tenant_id'],
                                       True)
            messages.success(
                request,
                _('User "%s" was successfully created.') % data['name'])
            try:
                api.role_add_for_tenant_user(
                    request, data['tenant_id'], new_user.id,
                    settings.OPENSTACK_KEYSTONE_DEFAULT_ROLE)
            except Exception, e:
                LOG.exception('Exception while assigning \
                               role to new user: %s' % new_user.id)
                messages.error(
                    request,
                    _('Error assigning role to user: %s') % e.message)

            return shortcuts.redirect('horizon:syspanel:users:index')
Beispiel #11
0
        tenants = api.tenant_list(request)
    except api_exceptions.ApiException, e:
        messages.error(request, _('Unable to retrieve tenant list: %s') %
                                 e.message)
        return shortcuts.redirect('horizon:syspanel:users:index')

    if request.method == "POST":
        form = UserForm(request.POST, tenant_list=tenants)
        if form.is_valid():
            user = form.clean()
            # TODO Make this a real request
            try:
                LOG.info('Creating user with name "%s"' % user['name'])
                new_user = api.user_create(request,
                                user['name'],
                                user['email'],
                                user['password'],
                                user['tenant_id'],
                                True)
                messages.success(request,
                                 _('User "%s" was successfully created.')
                                 % user['name'])
                try:
                    api.role_add_for_tenant_user(
                        request, user['tenant_id'], new_user.id,
                        settings.OPENSTACK_KEYSTONE_DEFAULT_ROLE)
                except Exception, e:
                    LOG.exception('Exception while assigning \
                                   role to new user: %s' % new_user.id)
                    messages.error(request,
                                   _('Error assigning role to user: %s')
                                   % e.message)