Mercurial > repos > eric-rasche > apollo
diff create_account.py @ 3:d4ae83dedb14 draft
planemo upload for repository https://github.com/TAMU-CPT/galaxy-webapollo commit 4ac38d0b6dba1183f3e78eb5c224c7051064b4a5
author | eric-rasche |
---|---|
date | Thu, 12 Jan 2017 11:52:28 -0500 |
parents | 6002cc0df04e |
children | f9a6e151b3b4 |
line wrap: on
line diff
--- a/create_account.py Tue May 03 13:48:11 2016 -0400 +++ b/create_account.py Thu Jan 12 11:52:28 2017 -0500 @@ -2,7 +2,8 @@ import random import argparse import time -from webapollo import WebApolloInstance, GroupObj +from webapollo import WAAuth, WebApolloInstance + def pwgen(length): chars = list('qwrtpsdfghjklzxcvbnm') @@ -10,28 +11,28 @@ if __name__ == '__main__': parser = argparse.ArgumentParser(description='Sample script to add an account via web services') - parser.add_argument('apollo', help='Complete Apollo URL') - parser.add_argument('username', help='WA Admin Username') - parser.add_argument('password', help='WA Admin Password') + WAAuth(parser) parser.add_argument('email', help='User Email') - parser.add_argument('--first', help='First Name', default='J') + parser.add_argument('--first', help='First Name', default='Jane') parser.add_argument('--last', help='Last Name', default='Aggie') args = parser.parse_args() wa = WebApolloInstance(args.apollo, args.username, args.password) password = pwgen(12) - wa.users.createUser(args.email, args.first, args.last, password, role='user') time.sleep(1) - user = [u for u in wa.users.loadUsers() - if u.username == args.email][0] - - bich464 = GroupObj(name="bich464-2016-spring") + users = wa.users.loadUsers() + user = [u for u in users + if u.username == args.email] - # Update name, regen password if the user ran it again - wa.users.updateUser(user, args.email, args.first, args.last, password) - # Add to bich464 group - wa.users.addUserToGroup(bich464, user) + if len(user) == 1: + # Update name, regen password if the user ran it again + userObj = user[0] + returnData = wa.users.updateUser(userObj, args.email, args.first, args.last, password) + print 'Updated User\nUsername: %s\nPassword: %s' % (args.email, password) + else: + returnData = wa.users.createUser(args.email, args.first, args.last, password, role='user') + print 'Created User\nUsername: %s\nPassword: %s' % (args.email, password) - print 'Username: %s\nPassword: %s' % (args.email, password) + print "Return data: " + str(returnData)