Sha256: 0f8d82f123a862946de470367b026d11673da1c125e35255d64fd597021dab09

Contents?: true

Size: 776 Bytes

Versions: 1

Compression:

Stored size: 776 Bytes

Contents

#!/usr/bin/env ruby

if ENV.has_key?('SSM_KEY_PATH')
  require 'docker/pipeline/ssm_parameters'
  require 'timeout'

  puts 'Injecting application secrets...'

  begin
    ssm_key_path = ENV.fetch('SSM_KEY_PATH')
    exec Docker::Pipeline::SsmParameters.at(ssm_key_path), *ARGV
  rescue Aws::Errors::MissingRegionError
    puts 'Error: Missing AWS Region'
    exit 1
  rescue Aws::Errors::MissingCredentialsError
    puts 'Error: Missing AWS Credentials'
    exit 2
  rescue Docker::Pipeline::ExcessiveThrottlingError
    puts 'Error: Unable to fetch all SSM Parameters; exhausted retries due to API throttling!'
    exit 3
  rescue Timeout::Error
    puts 'Error: Unable to fetch all SSM Parameters; exhausted maximum allowable time to complete!'
  end
else
  exec *ARGV
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cai-ecs-entrypoint-2.0.1 bin/ssm-entrypoint