Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time
- from boto import elastictranscoder
- REQUEST_FREQ = 0.3 # Every x seconds
- REGION = 'eu-west-1'
- TO_CANCEL = [
- 'Progressing',
- 'Submitted'
- ]
- def main():
- et = elastictranscoder.connect_to_region(REGION)
- all_jobs = []
- for status in TO_CANCEL:
- jobs = get_jobs(et, status)
- all_jobs.extend(jobs)
- cancel_jobs(et, all_jobs)
- def get_jobs(et, status, jobs=None, page_token=None):
- print("Get jobs: status => {}, page token => {}".format(status, page_token))
- if jobs is None:
- jobs = []
- time.sleep(REQUEST_FREQ)
- response = et.list_jobs_by_status(status, page_token=page_token)
- jobs.extend(response['Jobs'])
- page_token = response['NextPageToken']
- if page_token:
- return get_jobs(et, status, jobs=jobs, page_token=page_token)
- return jobs
- def cancel_jobs(et, jobs):
- for job in jobs:
- job_id = job['Id']
- print("Cancelling Job ID: {}".format(job_id))
- et.cancel_job(job_id)
- time.sleep(REQUEST_FREQ)
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement