Advertisement
Fraktalo

Untitled

Apr 20th, 2015
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.09 KB | None | 0 0
  1. import sys
  2. import bioblend
  3. from bioblend import galaxy
  4. from bioblend import *
  5. from bioblend.galaxy import GalaxyInstance
  6. from bioblend.galaxy.histories import HistoryClient
  7. from bioblend.galaxy.tools import ToolClient
  8. from bioblend.galaxy.workflows import WorkflowClient
  9. from bioblend.galaxy.datasets import DatasetClient
  10.  
  11. def main():
  12.     #USER INPUT
  13.     GALAXY_URL = sys.argv[1]
  14.     GALAXY_API_KEY = sys.argv[2]
  15.     user_email = sys.argv[3]
  16.     #user_id = sys.argv[4]
  17.  
  18.     gi = bioblend.galaxy.GalaxyInstance(GALAXY_URL, GALAXY_API_KEY)
  19.     libraries = galaxy.libraries.LibraryClient(gi)
  20.     already_existing_libraries = libraries.get_libraries(library_id=None, name="%s's library"%(user_email), deleted=False)
  21.     library_id = ""
  22.     lib_already_exists = False
  23.  
  24.     #Getting user_id
  25.     users = bioblend.galaxy.users.UserClient(gi)
  26.     user_list = users.get_users(deleted=False)
  27.     for user_dic in user_list :
  28.        if user_dic['email'] == user_email :
  29.            print "============================================================================================"
  30.            print 'user dictionnary : '  
  31.            print user_dic
  32.            user_id = user_dic['id']
  33.            print "============================================================================================"
  34.            print 'value of user_id used to set permissions : '
  35.            print user_id
  36.            user_exists = True
  37.            break
  38.  
  39.     if user_exists :
  40.         for lib_dic in already_existing_libraries :
  41.             if lib_dic['deleted'] == False and lib_dic['name'] == "%s's library"%(user_email) :
  42.                 lib_already_exists = True
  43.                 library_id = lib_dic['id']
  44.                 print "Library already exists, aborting"
  45.                 break
  46.  
  47.         #Creating data library
  48.         if not lib_already_exists :
  49.             libraries.create_library("%s's library"%(user_email), description="%s's library"%(user_email), synopsis="%s's library"%(user_email))
  50.             existing_libraries = libraries.get_libraries(library_id=None, name="%s's library"%(user_email), deleted=False)
  51.             for lib_dic in existing_libraries :
  52.                 if lib_dic['deleted'] == False and lib_dic['name'] == "%s's library"%(user_email) :
  53.                     library_id = lib_dic['id']
  54.                     break
  55.             libraries.set_library_permissions(library_id, access_in=user_id, modify_in=user_id, add_in=user_id, manage_in=user_id)
  56.             print "Data library created"
  57.         ret = gi.libraries.get_library_permissions(library_id)
  58.         print "============================================================================================"
  59.         print "library permissions of current library : "
  60.         print ret
  61.         #assert(ret['access_library_role_list'] == user_id)
  62.         #assert(ret['modify_library_role_list'] == user_id)
  63.         #assert(ret['add_library_item_role_list']) == user_id)
  64.         #assert(ret['manage_library_role_list']) == user_id)
  65.            
  66.     else :
  67.         print "This user email does not exist, aborting"
  68.  
  69.  
  70. if __name__ == "__main__" : main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement