Advertisement
Guest User

Untitled

a guest
Aug 31st, 2015
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. import time
  2.  
  3. from boto import elastictranscoder
  4.  
  5. REQUEST_FREQ = 0.3 # Every x seconds
  6. REGION = 'eu-west-1'
  7. TO_CANCEL = [
  8. 'Progressing',
  9. 'Submitted'
  10. ]
  11.  
  12.  
  13. def main():
  14. et = elastictranscoder.connect_to_region(REGION)
  15. all_jobs = []
  16. for status in TO_CANCEL:
  17. jobs = get_jobs(et, status)
  18. all_jobs.extend(jobs)
  19. cancel_jobs(et, all_jobs)
  20.  
  21.  
  22. def get_jobs(et, status, jobs=None, page_token=None):
  23. print("Get jobs: status => {}, page token => {}".format(status, page_token))
  24. if jobs is None:
  25. jobs = []
  26. time.sleep(REQUEST_FREQ)
  27. response = et.list_jobs_by_status(status, page_token=page_token)
  28. jobs.extend(response['Jobs'])
  29. page_token = response['NextPageToken']
  30. if page_token:
  31. return get_jobs(et, status, jobs=jobs, page_token=page_token)
  32. return jobs
  33.  
  34.  
  35. def cancel_jobs(et, jobs):
  36. for job in jobs:
  37. job_id = job['Id']
  38. print("Cancelling Job ID: {}".format(job_id))
  39. et.cancel_job(job_id)
  40. time.sleep(REQUEST_FREQ)
  41.  
  42.  
  43. if __name__ == '__main__':
  44. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement