Files
galaxy/scripts/api/sequencer_configuration_create.py
T
Nicola Soranzo 21b44bf348 Fix all E201 and E202 style errors
using the following command:
```
autopep8 -i -r --exclude $(sed -e 's|^|./|' -e 's|/$||' .ci/flake8_blacklist.txt | paste -sd,) --select E201,E202 .
```
2017-08-17 11:35:39 +01:00

52 lines
2.2 KiB
Python
Executable File

#!/usr/bin/env python
from __future__ import print_function
import os
import sys
from common import get, submit
def create_sequencer_configuration(key, base_url, request_form_filename, sample_form_filename, request_type_filename, email_addresses, return_formatted=True):
# create request_form
data = {}
data['xml_text'] = open(request_form_filename).read()
request_form = submit(key, "%sforms" % base_url, data, return_formatted=False)[0]
# create sample_form
data = {}
data['xml_text'] = open(sample_form_filename).read()
sample_form = submit(key, "%sforms" % base_url, data, return_formatted=False)[0]
# get user ids
user_ids = [user['id'] for user in get(key, "%susers" % base_url) if user['email'] in email_addresses]
# create role, assign to user
data = {}
data['name'] = "request_type_role_%s_%s_%s name" % (request_form['id'], sample_form['id'], '_'.join(email_addresses))
data['description'] = "request_type_role_%s_%s_%s description" % (request_form['id'], sample_form['id'], '_'.join(email_addresses))
data['user_ids'] = user_ids
role_ids = [role['id'] for role in submit(key, "%sroles" % base_url, data, return_formatted=False)]
# create request_type
data = {}
data['request_form_id'] = request_form['id']
data['sample_form_id'] = sample_form['id']
data['role_ids'] = role_ids
data['xml_text'] = open(request_type_filename).read()
return submit(key, "%srequest_types" % base_url, data, return_formatted=return_formatted) # create and print out results for request type
def main():
try:
key = sys.argv[1]
base_url = sys.argv[2]
request_form_filename = sys.argv[3]
sample_form_filename = sys.argv[4]
request_type_filename = sys.argv[5]
email_addresses = sys.argv[6].split(',')
except IndexError:
print('usage: %s key base_url request_form_xml_description_file sample_form_xml_description_file request_type_xml_description_file email_address1[,email_address2]' % os.path.basename(sys.argv[0]))
sys.exit(1)
return create_sequencer_configuration(key, base_url, request_form_filename, sample_form_filename, request_type_filename, email_addresses, return_formatted=True)
if __name__ == "__main__":
main()