-
Notifications
You must be signed in to change notification settings - Fork 21
AWE APIs
- Job submission
curl -X POST -F upload=@job_script http://<awe_api_url>/job
- Show all jobs
curl -X GET http://<awe_api_url>/job
- Show recent <int> number of jobs (sorted by job submission time), recent can be combined with other GET /job APIs
curl -X GET http://<awe_api_url>/job?recent=<i>
- Show all active jobs in the queue
curl -X GET http://<awe_api_url>/job?active
- Show all suspended jobs in the queue
curl -X GET http://<awe_api_url>/job?suspend
- Show all registered jobs in the queue (active + suspend, excluding jobs in mongodb only)
curl -X GET http://<awe_api_url>/job?registered
- Show one job with specific job id
curl -X GET http://<awe_api_url>/job/<job_id>
- Query jobs by fields
curl -X GET http://<awe_api_url>/job?query&state=<in-progress|completed>&info.project=xxx&info.user=xxx&...
- Suspend an in-progress job
curl -X PUT http://<awe_api_url>/job/<job_id>?suspend
- Resume a suspended job
curl -X PUT http://<awe_api_url>/job/<job_id>?resume
- Resume all the suspended jobs in the queue
curl -X PUT http://<awe_api_url>/job?resumeall
- Re-submit a job from mongodb
curl -X PUT http://<awe_api_url>/job/<job_id>?resubmit
- Recompute a job from task i, the downstream tasks of i will all be recomputed
curl -X PUT http://<awe_api_url>/job/<job_id>?recompute=<int>
- Change the clientgroup attribute of the job
curl -X PUT http://<awe_api_url>/job/<job_id>?clientgroup=<new_cliengroup>
- Delete all suspended jobs
curl -X PUT http://<awe_api_url>/job/<job_id>?suspend
- Delete all zombie jobs (“in-progress” jobs in mongodb but not in the queue)
curl -X PUT http://<awe_api_url>/job?zombie
###2. Workunit APIs
- view a workunit (Highlighted ones are called only by awe-clients)
curl -X GET http://<awe_api_url>/work/<work_id>
- client request data token for the specific workunit
curl -X GET http://<awe_api_url>/work/<work_id>?datatoken&client=<client_id>
- client checkout workunit
curl -X GET http://<awe_api_url>/work?client=<client_id>
- client update workunit status (with optional logs/reports in files)
curl -X GET [-F perf=@perf_log] [-F notes=notes_file] http://<awe_api_url>/work/<work_id>?status=<new_status>&client=<client_id>&report
- view stdout of one workunit (need client side config: [Client] print_app_msg=True)
curl -X GET http://<awe_api_url>/work/<work_id>?report=stdout
- view stderr of one workunit (need client side config: [Client] print_app_msg=True)
curl -X GET http://<awe_api_url>/work/<work_id>?report=stderr
- Register a new client
curl -X POST -F profile=@clientprofile http://<awe_api_url>/client
- View all clients
curl -X GET http://<awe_api_url>/client
- View all busy clients
curl -X GET http://<awe_api_url>/client?busy
- View a client
curl -X GET http://<awe_api_url>/client/<client_id>
- Client sends heartbeat to server
curl -X GET http://<awe_api_url>/client/<client_id>?heartbeat
- Suspend all the clients
curl -X PUT http://<awe_api_url>/client?suspendall
- Resume all suspended clients
curl -X PUT http://<awe_api_url>/client?resumeall
- Suspend a client
curl -X PUT http://<awe_api_url>/client/<client_id>?suspend
- Resume a client
curl -X PUT http://<awe_api_url>/client/<client_id>?resume