タケユー・ウェブ日報

Ruby on Rails や Flutter といったWeb・モバイルアプリ技術を武器にお客様のビジネス立ち上げを支援する、タケユー・ウェブ株式会社の技術ブログです。

Elastic Transcoder ジョブをキャンセルする(AWS SDK for Ruby)

Elastic Transcoder ジョブをキャンセルする

http://docs.aws.amazon.com/ja_jp/elastictranscoder/latest/developerguide/canceling-a-job.html

ステータスがまだ [Submitted] になっているジョブをキャンセルできます。このステータスは、Elastic Transcoder ではファイルの変換が開始されていないことを意味します。次の手順では、Elastic Transcoder コンソールを使用してジョブをキャンセルする方法を説明します。

ジョブが開始されているものをキャンセルしようとすると

AWS::ElasticTranscoder::Errors::ResourceInUseException: The job was already in use: accountId=000000000000, resourceId=0000000000000-xxxxxx.

というエラーが発生します。

require 'aws-sdk'

transcoder = AWS::ElasticTranscoder::Client.new(api_version: '2012-09-25')
begin
  transcoder.cancel_job(id: ets_job_id) # => {:request_id=>"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
rescue AWS::ElasticTranscoder::Errors::ResourceInUseException => e
  # 失敗時処理
end