-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathexecution_engine2.html
1 lines (1 loc) · 156 KB
/
execution_engine2.html
1
<!DOCTYPE html><html><head><title>execution_engine2</title><link rel="stylesheet" href="KIDLspec.css"></head><body><div class="module"><div class="comment"></div><span class="keyword">module</span><span class="space"></span><span class="name">execution_engine2</span><span class="space"></span><span>{</span><br><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@range</span><span class="space"></span><span>[0,1]</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span class="primitive">int</span><span class="space"></span><span class="name" id="typedefexecution_engine2.boolean">boolean</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>A time in the format YYYY-MM-DDThh:mm:ssZ, where Z is either the</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>character Z (representing the UTC timezone) or the difference</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>in time to UTC in the format +/-HHMM, eg:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>2012-12-17T23:24:06-0500 (EST time)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>2013-04-03T08:56:32+0000 (UTC time)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>2013-04-03T08:56:32Z (UTC time)</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span class="primitive">string</span><span class="space"></span><span class="name" id="typedefexecution_engine2.timestamp">timestamp</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>A job id.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span class="primitive">string</span><span class="space"></span><span class="name" id="typedefexecution_engine2.job_id">job_id</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>A structure representing the Execution Engine status</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>git_commit - the Git hash of the version of the module.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>version - the semantic version for the module.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>service - the name of the service.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>server_time - the current server timestamp since epoch</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span># TODO - add some or all of the following</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>reboot_mode - if 1, then in the process of rebooting</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>stopping_mode - if 1, then in the process of stopping</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>running_tasks_total - number of total running jobs</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>running_tasks_per_user - mapping from user id to number of running jobs for that user</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>tasks_in_queue - number of jobs in the queue that are not running</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">git_commit</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">version</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">service</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">float</span><span class="space"></span><span class="name">server_time</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.Status">Status</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Returns the service configuration, including URL endpoints and timeouts.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>The returned values are:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>external-url - string - url of this service</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>kbase-endpoint - string - url of the services endpoint for the KBase environment</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>workspace-url - string - Workspace service url</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>catalog-url - string - catalog service url</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>shock-url - string - shock service url</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>handle-url - string - handle service url</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>auth-service-url - string - legacy auth service url</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>auth-service-url-v2 - string - current auth service url</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>auth-service-url-allow-insecure - boolean string (true or false) - whether to allow insecure requests</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>scratch - string - local path to scratch directory</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>executable - string - name of Job Runner executable</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>docker_timeout - int - time in seconds before a job will be timed out and terminated</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>initial_dir - string - initial dir for HTCondor to search for passed input/output files</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>transfer_input_files - initial list of files to transfer to HTCondor for job running</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.list_config">list_config</span><span>(</span><span class="parameters"></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span><span class="primitive">mapping</span><span><</span><span class="primitive">string</span><span>,</span><span class="space"></span><span class="primitive">string</span><span>></span></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">optional</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Returns the current running version of the execution_engine2 servicve as a semantic version string.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.ver">ver</span><span>(</span><span class="parameters"></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="primitive">string</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">none</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Simply check the status of this service to see queue details</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.status">status</span><span>(</span><span class="parameters"></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.Status">Status</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">none</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>A workspace object reference of the form X/Y/Z, where</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>X is the workspace id,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Y is the object id,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Z is the version.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span class="primitive">string</span><span class="space"></span><span class="name" id="typedefexecution_engine2.wsref">wsref</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Narrative metadata for a job. All fields are optional.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>run_id - the Narrative-assigned ID of the job run. 1:1 with a job ID.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>token_id - the ID of the token used to run the method.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>tag - the release tag, e.g. dev/beta/release.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>cell_id - the ID of the narrative cell from which the job was run.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">run_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">token_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">tag</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">cell_id</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.Meta">Meta</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Job requirements for a job. All fields are optional. To submit job requirements,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>the user must have full EE2 admin permissions. Ignored for the run concierge endpoint.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>request_cpus: the number of CPUs to request for the job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>request_memory: the amount of memory, in MB, to request for the job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>request_disk: the amount of disk space, in GB, to request for the job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>client_group: the name of the client group on which to run the job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>client_group_regex: Whether to treat the client group string, whether provided here,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>from the catalog, or as a default, as a regular expression when matching</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>clientgroups. Default True for HTC, but the default depends on the scheduler.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Omit to use the default.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>bill_to_user: the job will be counted against the provided user's fair share quota.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>ignore_concurrency_limits: ignore any limits on simultaneous job runs. Default false.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>scheduler_requirements: arbitrary key-value pairs to be provided to the job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>scheduler. Requires knowledge of the scheduler interface.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>debug_mode: Whether to run the job in debug mode. Default false.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">request_cpus</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">requst_memory</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">request_disk</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">client_group</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">client_group_regex</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">bill_to_user</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">ignore_concurrency_limits</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">mapping</span><span><</span><span class="primitive">string</span><span>,</span><span class="space"></span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">scheduler_requirements</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">debug_mode</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.JobRequirements">JobRequirements</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>method - the SDK method to run in module.method format, e.g.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>'KBaseTrees.construct_species_tree'</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>params - the parameters to pass to the method.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Optional parameters:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>app_id - the id of the Narrative application (UI) running this job (e.g.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>repo/name)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>service_ver - specific version of deployed service, last version is</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>used if this parameter is not defined</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>source_ws_objects - denotes the workspace objects that will serve as a</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>source of data when running the SDK method. These references will</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>be added to the autogenerated provenance. Must be in UPA format (e.g.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>6/90/4).</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>meta - Narrative metadata to associate with the job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>wsid - an optional workspace id to associate with the job. This is passed to the</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>workspace service, which will share the job based on the permissions of</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>the workspace rather than owner of the job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>parent_job_id - EE2 job id for the parent of the current job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>For run_job and run_job_concierge, this value can be specified to denote</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>the parent job of the job being created.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Warning: No checking is done on the validity of the job ID, and the parent job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>record is not altered.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Submitting a job with a parent ID to run_job_batch will cause an error to be</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>returned.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_requirements: the requirements for the job. The user must have full EE2</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>administration rights to use this parameter. Note that the job_requirements</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>are not returned along with the rest of the job parameters when querying the EE2</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>API - they are only considered when submitting a job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>as_admin: run the job with full EE2 permissions, meaning that any supplied workspace</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>IDs are not checked for accessibility and job_requirements may be supplied. The</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>user must have full EE2 administration rights.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Note that this field is not included in returned data when querying EE2.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">method</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">app_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">UnspecifiedObject</span><span>></span></span><span class="space"></span><span class="name">params</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">service_ver</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.wsref">wsref</a></span><span>></span></span><span class="space"></span><span class="name">source_ws_objects</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.Meta">Meta</a></span><span class="space"></span><span class="name">meta</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">wsid</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">parent_job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JobRequirements">JobRequirements</a></span><span class="space"></span><span class="name">job_requirements</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.RunJobParams">RunJobParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Start a new job.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.run_job">run_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.RunJobParams">RunJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Additional parameters for a batch job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>wsid: the workspace with which to associate the parent job.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>as_admin: run the job with full EE2 permissions, meaning that any supplied workspace</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>IDs are not checked for accessibility and job_requirements may be supplied. The</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>user must have full EE2 administration rights.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">wsid</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.BatchParams">BatchParams</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">batch_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span>></span></span><span class="space"></span><span class="name">child_job_ids</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.BatchSubmission">BatchSubmission</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">batch_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span>></span></span><span class="space"></span><span class="name">child_job_ids</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.AbandonChildren">AbandonChildren</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Run a batch job, consisting of a parent job and one or more child jobs.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Note that the as_admin parameters in the list of child jobs are ignored -</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>only the as_admin parameter in the batch_params is considered.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.run_job_batch">run_job_batch</span><span>(</span><span class="parameters"><span class="parameter"><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.RunJobParams">RunJobParams</a></span><span>></span></span><span class="space"></span><span class="name">params</span></span><span>,</span><span class="space"></span><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.BatchParams">BatchParams</a></span><span class="space"></span><span class="name">batch_params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.BatchSubmission">BatchSubmission</a></span><span class="space"></span><span class="name">job_ids</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_id of retried job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>retry_id: job_id of the job that was launched</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>str error: reason as to why that particular retry failed (available for bulk retry only)</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">retry_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">error</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.RetryResult">RetryResult</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_id of job to retry</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>as_admin: retry someone elses job in your namespace</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>#TODO Possibly Add JobRequirements job_requirements;</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.RetryParams">RetryParams</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_ids of job to retry</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>as_admin: retry someone else's job in your namespace</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>#TODO: Possibly Add list<JobRequirements> job_requirements;</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span>></span></span><span class="space"></span><span class="name">job_ids</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.BulkRetryParams">BulkRetryParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>#TODO write retry parent tests to ensure BOTH the parent_job_id is present, and retry_job_id is present</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>#TODO Add retry child that checks the status of the child? to prevent multiple retries</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Allowed Jobs</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>* Regular Job with no children</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>* Regular job with/without parent_id that runs a kbparallel call or a run_job_batch call</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Not Allowed</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>* Regular Job with children (Should not be possible to create yet)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>* Batch Job Parent Container (Not a job, it won't do anything, except cancel it's child jobs)</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.retry_job">retry_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.RetryParams">RetryParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.RetryResult">RetryResult</a></span><span class="space"></span><span class="name">retry_result</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Same as retry_job, but accepts multiple jobs</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.retry_jobs">retry_jobs</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.BulkRetryParams">BulkRetryParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.RetryResult">RetryResult</a></span><span>></span></span><span class="space"></span><span class="name">retry_result</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.abandon_children">abandon_children</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.AbandonChildren">AbandonChildren</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.BatchSubmission">BatchSubmission</a></span><span class="space"></span><span class="name">parent_and_child_ids</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>EE2Constants Concierge Params are</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>request_cpus: int</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>request_memory: int in MB</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>request_disk: int in GB</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_priority: int = None range from -20 to +20, with higher values meaning better priority.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Note: job_priority is currently not implemented.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>account_group: str = None # Someone elses account</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>ignore_concurrency_limits: ignore any limits on simultaneous job runs.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Default 1 (True).</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>requirements_list: list = None ['machine=worker102','color=red']</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>client_group: Optional[str] = CONCIERGE_CLIENTGROUP # You can leave default or specify a clientgroup</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>client_group_regex: Whether to treat the client group string, whether provided here,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>from the catalog, or as a default, as a regular expression when matching</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>clientgroups. Default True for HTC, but the default depends on the scheduler.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Omit to use the default.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>debug_mode: Whether to run the job in debug mode. Default 0 (False).</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">request_cpu</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">request_memory</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">request_disk</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">job_priority</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">account_group</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">ignore_concurrency_limits</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">requirements_list</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">client_group</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">client_group_regex</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">debug_mode</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.ConciergeParams">ConciergeParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.run_job_concierge">run_job_concierge</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.RunJobParams">RunJobParams</a></span><span class="space"></span><span class="name">params</span></span><span>,</span><span class="space"></span><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.ConciergeParams">ConciergeParams</a></span><span class="space"></span><span class="name">concierge_params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Get job params necessary for job execution</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>as_admin</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.GetJobParams">GetJobParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.get_job_params">get_job_params</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.GetJobParams">GetJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.RunJobParams">RunJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_id - a job id</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>status - the new status to set for the job.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">status</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.UpdateJobStatusParams">UpdateJobStatusParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.update_job_status">update_job_status</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.UpdateJobStatusParams">UpdateJobStatusParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>line - string - a string to set for the log line.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>is_error - int - if 1, then this line should be treated as an error, default 0</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>ts - int - a timestamp since epoch in milliseconds for the log line (optional)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>ts</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">line</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">is_error</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">ts</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.LogLine">LogLine</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@success</span><span class="space"></span><span>Whether or not the add operation was successful</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@line_number</span><span class="space"></span><span>the line number of the last added log</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">success</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">line_number</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.AddJobLogsResults">AddJobLogsResults</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.AddJobLogsParams">AddJobLogsParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.add_job_logs">add_job_logs</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.AddJobLogsParams">AddJobLogsParams</a></span><span class="space"></span><span class="name">params</span></span><span>,</span><span class="space"></span><span class="parameter"><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.LogLine">LogLine</a></span><span>></span></span><span class="space"></span><span class="name">lines</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.AddJobLogsResults">AddJobLogsResults</a></span><span class="space"></span><span class="name">results</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>last_line_number - common number of lines (including those in skip_lines</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>parameter), this number can be used as next skip_lines value to</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>skip already loaded lines next time.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.LogLine">LogLine</a></span><span>></span></span><span class="space"></span><span class="name">lines</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">last_line_number</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">count</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.GetJobLogsResults">GetJobLogsResults</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job id - the job id</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>optional skip_lines Legacy Parameter for Offset</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>optional offset Number of lines to skip (in case they were already loaded before).</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>optional limit optional parameter, maximum number of lines returned</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>optional as_admin request read access to record normally not allowed..</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">skip_lines</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">offset</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">limit</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.GetJobLogsParams">GetJobLogsParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.get_job_logs">get_job_logs</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.GetJobLogsParams">GetJobLogsParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.GetJobLogsResults">GetJobLogsResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Error block of JSON RPC response</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">name</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">code</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">message</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">error</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.JsonRpcError">JsonRpcError</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_id - string - the id of the job to mark completed or finished with an error</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>error_message - string - optional unless job is finished with an error</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>error_code - int - optional unless job finished with an error</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>error - JsonRpcError - optional output from SDK Job Containers</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_output - job output if job completed successfully</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">error_message</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">error_code</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JsonRpcError">JsonRpcError</a></span><span class="space"></span><span class="name">error</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">UnspecifiedObject</span><span class="space"></span><span class="name">job_output</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.FinishJobParams">FinishJobParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Register results of already started job</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.finish_job">finish_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.FinishJobParams">FinishJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>skip_estimation: default true. If set true, job will set to running status skipping estimation step</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">skip_estimation</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.StartJobParams">StartJobParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.start_job">start_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.StartJobParams">StartJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>exclude_fields: exclude certain fields to return. default None.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>exclude_fields strings can be one of fields defined in execution_engine2.db.models.models.Job</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">exclude_fields</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobParams">CheckJobParams</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_id - string - id of the job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>user - string - user who started the job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>wsid - int - optional id of the workspace where the job is bound</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>authstrat - string - what strategy used to authenticate the job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_input - object - inputs to the job (from the run_job call) ## TODO - verify</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_output - object - outputs from the job (from the run_job call) ## TODO - verify</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>updated - int - timestamp since epoch in milliseconds of the last time the status was updated</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>running - int - timestamp since epoch in milliseconds of when it entered the running state</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>created - int - timestamp since epoch in milliseconds when the job was created</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>finished - int - timestamp since epoch in milliseconds when the job was finished</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>status - string - status of the job. one of the following:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>created - job has been created in the service</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>estimating - an estimation job is running to estimate resources required for the main</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>job, and which queue should be used</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>queued - job is queued to be run</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>running - job is running on a worker node</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>completed - job was completed successfully</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>error - job is no longer running, but failed with an error</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>terminated - job is no longer running, terminated either due to user cancellation,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>admin cancellation, or some automated task</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>error_code - int - internal reason why the job is an error. one of the following:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>0 - unknown</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>1 - job crashed</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>2 - job terminated by automation</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>3 - job ran over time limit</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>4 - job was missing its automated output document</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>5 - job authentication token expired</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>errormsg - string - message (e.g. stacktrace) accompanying an errored job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>error - object - the JSON-RPC error package that accompanies the error code and message</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>#TODO, add these to the structure?</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>condor_job_ads - dict - condor related job information</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>retry_count - int - generated field based on length of retry_ids</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>retry_ids - list - list of jobs that are retried based off of this job</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>retry_parent - str - job_id of the parent this retry is based off of. Not available on a retry_parent itself</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>batch_id - str - the coordinating job, if the job is a child job created via run_job_batch</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>batch_job - bool - whether or not this is a batch parent container</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>child_jobs - array - Only parent container should have child job ids</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>scheduler_type - str - scheduler, such as awe or condor</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>scheduler_id - str - scheduler generated id</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>scheduler_estimator_id - str - id for the job spawned for estimation</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>terminated_code - int - internal reason why a job was terminated, one of:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>0 - user cancellation</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>1 - admin cancellation</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>2 - terminated by some automatic process</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>error</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>error_code</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>errormsg</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>terminated_code</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>estimating</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>running</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="annotation">@optional</span><span class="space"></span><span>finished</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">user</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">authstrat</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">wsid</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">status</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.RunJobParams">RunJobParams</a></span><span class="space"></span><span class="name">job_input</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">created</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">queued</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">estimating</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">running</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">finished</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">updated</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JsonRpcError">JsonRpcError</a></span><span class="space"></span><span class="name">error</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">error_code</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">errormsg</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">terminated_code</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">batch_id</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.JobState">JobState</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>get current status of a job</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_job">check_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobParams">CheckJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.JobState">JobState</a></span><span class="space"></span><span class="name">job_state</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>batch_jobstate - state of the coordinating job for the batch</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>child_jobstates - states of child jobs</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>IDEA: ADD aggregate_states - count of all available child job states, even if they are zero</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JobState">JobState</a></span><span class="space"></span><span class="name">batch_jobstate</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.JobState">JobState</a></span><span>></span></span><span class="space"></span><span class="name">child_jobstates</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobBatchResults">CheckJobBatchResults</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>get current status of a parent job, and it's children, if it has any.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_job_batch">check_job_batch</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobParams">CheckJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobBatchResults">CheckJobBatchResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_states - states of jobs</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>could be mapping<job_id, JobState> or list<JobState></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.JobState">JobState</a></span><span>></span></span><span class="space"></span><span class="name">job_states</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobsResults">CheckJobsResults</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>As in check_job, exclude_fields strings can be used to exclude fields.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>see CheckJobParams for allowed strings.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>return_list - optional, return list of job state if set to 1. Otherwise return a dict. Default 1.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span>></span></span><span class="space"></span><span class="name">job_ids</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">exclude_fields</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">return_list</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobsParams">CheckJobsParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_jobs">check_jobs</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsParams">CheckJobsParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsResults">CheckJobsResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Check status of all jobs in a given workspace. Only checks jobs that have been associated</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>with a workspace at their creation.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>return_list - optional, return list of job state if set to 1. Otherwise return a dict. Default 0.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">workspace_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">exclude_fields</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">return_list</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckWorkspaceJobsParams">CheckWorkspaceJobsParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_workspace_jobs">check_workspace_jobs</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckWorkspaceJobsParams">CheckWorkspaceJobsParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsResults">CheckJobsResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>cancel_and_sigterm</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>"""</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Reasons for why the job was cancelled</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Current Default is `terminated_by_user 0` so as to not update narrative client</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>terminated_by_user = 0</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>terminated_by_admin = 1</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>terminated_by_automation = 2</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>"""</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>job_id job_id</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>terminated_code</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">terminated_code</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CancelJobParams">CancelJobParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Cancels a job. This results in the status becoming "terminated" with termination_code 0.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.cancel_job">cancel_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CancelJobParams">CancelJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>job_id - id of job running method</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>finished - indicates whether job is done (including error/cancel cases) or not</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>canceled - whether the job is canceled or not.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>ujs_url - url of UserAndJobState service used by job service</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">finished</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">canceled</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">ujs_url</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobCanceledResult">CheckJobCanceledResult</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Check whether a job has been canceled. This method is lightweight compared to check_job.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_job_canceled">check_job_canceled</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CancelJobParams">CancelJobParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobCanceledResult">CheckJobCanceledResult</a></span><span class="space"></span><span class="name">result</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">status</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.GetJobStatusResult">GetJobStatusResult</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span><span class="space"></span><span class="name">job_id</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.GetJobStatusParams">GetJobStatusParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Just returns the status string for a job of a given id.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.get_job_status">get_job_status</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.GetJobStatusParams">GetJobStatusParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.GetJobStatusResult">GetJobStatusResult</a></span><span class="space"></span><span class="name">result</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Projection Fields</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>user = StringField(required=True)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>authstrat = StringField(</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>required=True, default="kbaseworkspace", validation=valid_authstrat</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>wsid = IntField(required=False)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>status = StringField(required=True, validation=valid_status)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>updated = DateTimeField(default=datetime.datetime.utcnow, autonow=True)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>estimating = DateTimeField(default=None) # Time when job began estimating</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>running = DateTimeField(default=None) # Time when job started</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span># Time when job finished, errored out, or was terminated by the user/admin</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>finished = DateTimeField(default=None)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>errormsg = StringField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>msg = StringField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>error = DynamicField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>terminated_code = IntField(validation=valid_termination_code)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>error_code = IntField(validation=valid_errorcode)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>scheduler_type = StringField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>scheduler_id = StringField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>scheduler_estimator_id = StringField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>job_input = EmbeddedDocumentField(JobInput, required=True)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>job_output = DynamicField()</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>Results of check_jobs_date_range methods.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>jobs - the jobs matching the query, up to `limit` jobs.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>count - the number of jobs returned.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>query_count - the number of jobs that matched the filters.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>filter - DEPRECATED - this field may change in the future. The filters that were</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>applied to the jobs.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>skip - the number of jobs that were skipped prior to beginning to return jobs.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>projection - the list of fields included in the returned job. By default all fields.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>limit - the maximum number of jobs returned.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>sort_order - the order in which the results were sorted by the job ID - + for</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>ascending, - for descending.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>TODO: DOCUMENT THE RETURN OF STATS mapping</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="name"><a href="#typedefexecution_engine2.JobState">JobState</a></span><span>></span></span><span class="space"></span><span class="name">jobs</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">count</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">query_count</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">mapping</span><span><</span><span class="primitive">string</span><span>,</span><span class="space"></span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">filter</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">skip</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">projection</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">limit</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">sort_order</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobsDateRangeResults">CheckJobsDateRangeResults</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Check job for all jobs in a given date/time range for all users (Admin function)</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>Notes on start_time and end_time:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>These fields are designated as floats but floats, ints, and strings are all</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>accepted. Times are determined as follows:</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>- if the field is a float or a string that contains a float and only a float,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>the field value is treated as seconds since the epoch.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>- if the field is an int or a string that contains an int and only an int,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>the field value is treated as milliseconds since the epoch.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>- if the field is a string not matching the criteria above, it is treated as</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>a date and time. Nearly any unambigous format can be parsed.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>float start_time - Filter based on job creation timestamp since epoch</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>float end_time - Filter based on job creation timestamp since epoch</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>list<string> projection - A list of fields to include in the projection, default ALL</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>See "Projection Fields" above</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>list<string> filter - DEPRECATED: this field may change or be removed in the future.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>A list of simple filters to "AND" together, such as error_code=1, wsid=1234,</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>terminated_code = 1</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>int limit - The maximum number of records to return</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>string user - The user whose job records will be returned. Optional. Default is the</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>current user.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>int offset - the number of jobs to skip before returning records.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>boolean ascending - true to sort by job ID ascending, false descending.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span>boolean as_admin - true to run the query as an admin; user must have admin EE2</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>permissions. Required if setting `user` to something other than your own.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span><span class="space"></span>TODO: this seems to have no effect</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>projection</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>filter</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>limit</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>user</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>offset</span></span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span><span class="space"></span><span class="space"></span><span class="annotation">@optional</span><span class="space"></span><span>ascending</span></span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">float</span><span class="space"></span><span class="name">start_time</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">float</span><span class="space"></span><span class="name">end_time</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">projection</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">filter</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">limit</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">user</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">int</span><span class="space"></span><span class="name">offset</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">ascending</span><span>;</span></span></div><div><span><span class="tab"></span><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span><span class="space"></span><span class="name">as_admin</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.CheckJobsDateRangeParams">CheckJobsDateRangeParams</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_jobs_date_range_for_user">check_jobs_date_range_for_user</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsDateRangeParams">CheckJobsDateRangeParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsDateRangeResults">CheckJobsDateRangeResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.check_jobs_date_range_for_all">check_jobs_date_range_for_all</span><span>(</span><span class="parameters"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsDateRangeParams">CheckJobsDateRangeParams</a></span><span class="space"></span><span class="name">params</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.CheckJobsDateRangeResults">CheckJobsDateRangeResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">UnspecifiedObject</span><span class="space"></span><span class="name">held_job</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.HeldJob">HeldJob</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Handle a held CONDOR job. You probably never want to run this, only the reaper should run it.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.handle_held_job">handle_held_job</span><span>(</span><span class="parameters"><span class="parameter"><span class="primitive">string</span><span class="space"></span><span class="name">cluster_id</span></span></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.HeldJob">HeldJob</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Check if current user has ee2 admin rights.</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.is_admin">is_admin</span><span>(</span><span class="parameters"></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="typedef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>str permission - One of 'r|w|x' (('read' | 'write' | 'none'))</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">typedef</span><span class="space"></span><span><span class="primitive">structure</span><span class="space"></span><span>{</span><div><span><span class="tab"></span><span class="tab"></span><span class="primitive">string</span><span class="space"></span><span class="name">permission</span><span>;</span></span></div><span class="tab"></span><span>}</span></span><span class="space"></span><span class="name" id="typedefexecution_engine2.AdminRolesResults">AdminRolesResults</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Check if current user has ee2 admin rights.</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>If so, return the type of rights and their roles</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.get_admin_permission">get_admin_permission</span><span>(</span><span class="parameters"></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span class="name"><a href="#typedefexecution_engine2.AdminRolesResults">AdminRolesResults</a></span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">required</span><span>;</span></span></div><br><div><span class="funcdef"><div class="comment"><div><span class="tab"></span><span>/*</span></div><div><span class="tab"></span><span class="space"></span><span>*</span><span class="space"></span><span>Get a list of clientgroups manually extracted from the config file</span></div><div><span class="tab"></span><span class="space"></span><span>*/</span></div></div><span class="tab"></span><span class="keyword">funcdef</span><span class="space"></span><span class="name" id="funcdefexecution_engine2.get_client_groups">get_client_groups</span><span>(</span><span class="parameters"></span><span>)</span><span class="space"></span><span class="keyword">returns</span><span>(</span><span class="returns"><span class="parameter"><span><span class="primitive">list</span><span><</span><span class="primitive">string</span><span>></span></span><span class="space"></span><span class="name">client_groups</span></span></span><span>)</span><span class="space"></span><span class="keyword">authentication</span><span class="space"></span><span class="keyword">none</span><span>;</span></span></div><span>}</span><span>;</span></div><div class="index"><h2>Function Index</h2><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.abandon_children">abandon_children</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.add_job_logs">add_job_logs</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.cancel_job">cancel_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_job">check_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_job_batch">check_job_batch</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_job_canceled">check_job_canceled</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_jobs">check_jobs</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_jobs_date_range_for_all">check_jobs_date_range_for_all</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_jobs_date_range_for_user">check_jobs_date_range_for_user</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.check_workspace_jobs">check_workspace_jobs</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.finish_job">finish_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.get_admin_permission">get_admin_permission</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.get_client_groups">get_client_groups</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.get_job_logs">get_job_logs</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.get_job_params">get_job_params</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.get_job_status">get_job_status</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.handle_held_job">handle_held_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.is_admin">is_admin</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.list_config">list_config</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.retry_job">retry_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.retry_jobs">retry_jobs</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.run_job">run_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.run_job_batch">run_job_batch</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.run_job_concierge">run_job_concierge</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.start_job">start_job</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.status">status</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.update_job_status">update_job_status</a></span></div><div><span class="tab"></span><span class="name"><a href="#funcdefexecution_engine2.ver">ver</a></span></div><h2>Type Index</h2><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.AbandonChildren">AbandonChildren</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.AddJobLogsParams">AddJobLogsParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.AddJobLogsResults">AddJobLogsResults</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.AdminRolesResults">AdminRolesResults</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.BatchParams">BatchParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.BatchSubmission">BatchSubmission</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.boolean">boolean</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.BulkRetryParams">BulkRetryParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CancelJobParams">CancelJobParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobBatchResults">CheckJobBatchResults</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobCanceledResult">CheckJobCanceledResult</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobParams">CheckJobParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobsDateRangeParams">CheckJobsDateRangeParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobsDateRangeResults">CheckJobsDateRangeResults</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobsParams">CheckJobsParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckJobsResults">CheckJobsResults</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.CheckWorkspaceJobsParams">CheckWorkspaceJobsParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.ConciergeParams">ConciergeParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.FinishJobParams">FinishJobParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.GetJobLogsParams">GetJobLogsParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.GetJobLogsResults">GetJobLogsResults</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.GetJobParams">GetJobParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.GetJobStatusParams">GetJobStatusParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.GetJobStatusResult">GetJobStatusResult</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.HeldJob">HeldJob</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.job_id">job_id</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JobRequirements">JobRequirements</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JobState">JobState</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.JsonRpcError">JsonRpcError</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.LogLine">LogLine</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.Meta">Meta</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.RetryParams">RetryParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.RetryResult">RetryResult</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.RunJobParams">RunJobParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.StartJobParams">StartJobParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.Status">Status</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.timestamp">timestamp</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.UpdateJobStatusParams">UpdateJobStatusParams</a></span></div><div><span class="tab"></span><span class="name"><a href="#typedefexecution_engine2.wsref">wsref</a></span></div></div></body></html>