Mercurial > repos > gga > apollo_feat_from_gff3
view delete_organism.py @ 5:cc098732daf6 draft
planemo upload for repository https://github.com/galaxy-genome-annotation/galaxy-tools/tree/master/tools/apollo commit 85194fa009ead2c34720faab61a4143fc29d17c2
author | gga |
---|---|
date | Fri, 31 Aug 2018 09:33:27 -0400 |
parents | 5aa3bc8d0253 |
children | 5d1cf95ade8a |
line wrap: on
line source
#!/usr/bin/env python from __future__ import print_function import argparse import logging from webapollo import GuessOrg, OrgOrGuess, PermissionCheck, WAAuth, WebApolloInstance logging.basicConfig(level=logging.INFO) log = logging.getLogger(__name__) if __name__ == '__main__': parser = argparse.ArgumentParser(description='Sample script to completely delete an organism') WAAuth(parser) parser.add_argument('email', help='User Email') OrgOrGuess(parser) args = parser.parse_args() wa = WebApolloInstance(args.apollo, args.username, args.password) # User must have an account gx_user = wa.users.assertOrCreateUser(args.email) # Get organism org_cn = GuessOrg(args, wa) if isinstance(org_cn, list): org_cn = org_cn[0] if not PermissionCheck(gx_user, org_cn, "WRITE"): raise Exception("You do not have write permission on this organism") org = wa.organisms.findOrganismByCn(org_cn) # Call setSequence to tell apollo which organism we're working with wa.annotations.setSequence(org['commonName'], org['id']) # Then get a list of features. features = wa.annotations.getFeatures() # For each feature in the features # If it exists if 'features' in features: for feature in features['features']: # We see that deleteFeatures wants a uniqueName, and so we pass # is the uniquename field in the feature. print(wa.annotations.deleteFeatures([feature['uniquename']]))