def can_create_user(email, password, password_confirm, deployment): data = MultiDict(dict(email=email, password=password, password_confirm=password_confirm)) form = RegisterForm(data, csrf_enabled=False) if form.validate(): return True, {} email_errors = form.errors.get('email', []) if (len(email_errors) == 1) and \ (email_errors[0] == get_message('EMAIL_ALREADY_ASSOCIATED', email=email)[0]): accounts = users.find(email=email, deployment=deployment) if not accounts: return True, {} return False, form.errors
def run(self): email = prompt('Email') password = prompt_pass('Password') password_confirm = prompt_pass('Confirm Password') data = MultiDict( dict(email=email, password=password, password_confirm=password_confirm)) form = RegisterForm(data, csrf_enabled=False) if form.validate(): user = register_user(email=email, password=password) print '\nUser created successfully' print 'User(id=%s email=%s' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors)
def run(self): if models.Deployment.objects.count() > 0: print 'You already have deployments set up.' return name = prompt('Name of new deployment') hostname = prompt('Hostname for deployment') deployment = models.Deployment.objects.create(name=name, hostnames=[hostname]) # create the roles role_names = ['manager', 'clerk', 'analyst', 'admin'] for role_name in role_names: role = models.Role.objects.create(name=role_name) # create the admin user email = prompt('Email for admin user') password = prompt_pass('Password for admin user') password_confirm = prompt_pass('Confirm password') data = MultiDict({ 'email': email, 'password': password, 'password_confirm': password_confirm }) form = RegisterForm(data, csrf_enabled=False) if form.validate(): try: user = register_user(email=email, password=password) except socket.error as e: print 'Error sending registration email: {}'.format(e) user = services.users.get(email=email, deployment=None) user.update(set__deployment=deployment, add_to_set__roles=role) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) else: print '\nError creating user:'******'\n'.join(errors) # create at least one event from apollo.manage.deployments import CreateEventCommand CreateEventCommand._create_event(deployment)
def create(): '''Create a new user''' data = { 'first_name': prompt('First name'), 'last_name': prompt('Last name'), 'email': prompt('Email'), 'password': prompt_pass('Password'), 'password_confirm': prompt_pass('Confirm Password'), } form = RegisterForm(MultiDict(data), csrf_enabled=False) if form.validate(): data['password'] = encrypt_password(data['password']) user = datastore.create_user(**data) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors)
def run(self): if models.Deployment.objects.count() > 0: print 'You already have deployments set up.' return name = prompt('Name of new deployment') hostname = prompt('Hostname for deployment') deployment = models.Deployment.objects.create(name=name, hostnames=[hostname]) # create the roles role_names = ['manager', 'clerk', 'analyst', 'admin'] for role_name in role_names: role = models.Role.objects.create(name=role_name) # create the admin user email = prompt('Email for admin user') password = prompt_pass('Password for admin user') password_confirm = prompt_pass('Confirm password') data = MultiDict({ 'email': email, 'password': password, 'password_confirm': password_confirm }) form = RegisterForm(data, csrf_enabled=False) if form.validate(): try: user = register_user(email=email, password=password) except socket.error as e: print 'Error sending registration email: {}'.format(e) user = services.users.get(email=email, deployment=None) user.update(set__deployment=deployment, add_to_set__roles=role) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors) # create at least one event name = prompt('Event name') start = end = None while True: try: start = datetime.strptime(prompt('Start date (YYYY-MM-DD)'), '%Y-%m-%d') except ValueError: pass if start: break while True: try: end = datetime.strptime(prompt('End date (YYYY-MM-DD)'), '%Y-%m-%d') except ValueError: pass if end: break event, _ = models.Event.objects.get_or_create(name=name, deployment=deployment) event.start_date = datetime.combine(start, datetime.min.time()) event.end_date = datetime.combine(end, datetime.max.time()) event.save()