slycat.web.server
- slycat.web.server.base64_decode(n, encoding='ISO-8859-1')[source]
Return the native string base64-decoded (as a native string).
- slycat.web.server.check_https_get_remote_ip()[source]
checks that the connection is https and then returns the users remote ip :return: remote ip
- slycat.web.server.check_user(session_user, apache_user, sid)[source]
check to see if the session user is equal to the apache user raise 403 and delete the session if they are not equal :param session_user: user_name in the couchdb use session :param apache_user: user sent in the apache header “authuser” :param couchdb: hook to couch :param sid: session id :param session: session object from couch :return:
- slycat.web.server.checkjob(sid, jid)[source]
Submits a command to the slycat-agent to check the status of a submitted job to a cluster running SLURM.
- Parameters:
sid (int) – Session identifier
jid (int) – Job identifier
- Returns:
response – A dictionary with the following keys: jid, status, errors
- Return type:
dict
- slycat.web.server.clean_up_old_session(user_name=None)[source]
try and delete any outdated sessions for the user if they have the cookie for it :return:no-op
- slycat.web.server.create_session(hostname, username, password)[source]
Create a cached remote session for the given host.
- Parameters:
hostname (string) – Name of the remote host to connect via SSH.
username (string) – Username for SSH authentication.
password (string) – Password for SSH authentication
- Returns:
sid – A unique session identifier.
- Return type:
string
- slycat.web.server.create_single_sign_on_session(remote_ip, auth_user, secure=True)[source]
WSGI/RevProxy no-login session creations. Successful authentication and access verification, create a session and return. :return: not used
- slycat.web.server.decode_username_and_password()[source]
decode the url from the json that was passed to us :return: decoded url and password as a tuple
- slycat.web.server.delete_model_parameter(database, model, aid)[source]
Delete a model parameter in the couch database :param database: :param model: model from the couchdb :param aid: artifact id :return: not used
- slycat.web.server.evaluate(hdf5_array, expression, expression_type, expression_level=0, hyperslice=None)[source]
Evaluate a hyperchunk expression.
- slycat.web.server.get_remote_file(sid, path)[source]
Returns the content of a file from a remote system.
- Parameters:
sid (int) – Session identifier
path (string) – Path for the requested file
- Returns:
content – Content of the requested file
- Return type:
string
- slycat.web.server.get_remote_file_server(client, sid, path)[source]
Returns the content of a file from a remote system.
- Parameters:
sid (int) – Session identifier
path (string) – Path for the requested file
- Returns:
content – Content of the requested file
- Return type:
string
- slycat.web.server.mix(a, b, amount)[source]
Linear interpolation between two numbers. Useful for computing model progress.
- slycat.web.server.parse_existing_file(database, parser, input, attachment, model, aid)[source]
calls the parse function specified by the registered parser :return: not used
- slycat.web.server.post_model_file(mid, input=None, sid=None, path=None, aid=None, parser=None, client=None, **kwargs)[source]
- slycat.web.server.put_model_array(database, model, aid, array_index, attributes, dimensions)[source]
store array for model
- Parameters:
database – database of model
model – model as an object
aid – artifact id (eg data-table)
array_index – index of the array
attributes – name and type in column
dimensions – number of data rows
- Returns:
- slycat.web.server.put_model_arrayset(database, model, aid, input=False)[source]
Start a new model array set artifact. :param database: the database with our model :param model: the model :param aid: artifact id :param input: :return:
- slycat.web.server.put_model_arrayset_data(database, model, aid, hyperchunks, data)[source]
Write data to an arrayset artifact.
- Parameters:
database (database object, required) –
model (model object, required) –
aid (string, required) – Unique (to the model) arrayset artifact id.
hyperchunks (string or hyperchunks parse tree, required) – Specifies where the data will be stored, in Hyperchunks format.
data (iterable, required) – A collection of numpy.ndarray data chunks to be stored. The number of data chunks must match the number implied by the hyperchunks parameter.
- slycat.web.server.put_project_data_parameter(database, project_data, aid, value, input=False)[source]
- slycat.web.server.response_url()[source]
get the resonse_url and clean it to make sure that we are not being spoofed :return: url to route to once signed in
- slycat.web.server.tonative(n, encoding='ISO-8859-1')[source]
Return the given string as a native string in the given encoding.