I debugged create_or_update_organism.py for a while and so far I found the following.
Line 134 sets org = {'annotationCount': 0, 'blatdb': None, 'commonName': 'E. coli K12 (gx*****)', 'currentOrganism': False, 'directory': '/data/dnb01/apollo/*********', 'genomeFasta': 'seq/genome.fasta', 'genomeFastaIndex': 'seq/genome.fasta.fai', 'genus': 'Escherichia', 'id': *******, 'metadata': '{"creator":"**"}', 'nonDefaultTranslationTable': None, 'obsolete': False, 'publicMode': False, 'sequences': 2, 'species': 'coli', 'valid': True}
.
Execution continues until line 148.
In accessible_organisms, both permission_map
(a dict) and user.organismPermissions
are empty. Thus, an empty list is returned, triggering the exception on line 150.
The user
passed to accessible_organisms
is created here. The content of wa.users._assert_or_create_user(args.email)
is
{'firstName': 'Brian ',
'lastName': 'Burnes',
'inactive': False,
'role': 'USER',
'availableGroups': [
{'name': '****'},
...,
{'name': '****'},
{'name': '****'},
{'name': '****'}],
'userCount': 1,
'searchName': None,
'groups': [],
'userId': *******,
'organismPermissions': [],
'username': 'bburnes01@gmail.com'}
The value for the key organismPermissions
is an empty list. Digging deeper, that information comes from the loadUsers
endpoint.
Feel free to continue debugging if you find some time for it.