def get_s3_config(params)
s3_config = {}
if params.key?('aws_client')
GoodData.logger.warn('Found two configuration aws_client and s3_client for S3 input source, use aws_client configuration') if params.key?('s3_client')
raise 'Unable to connect to AWS. Parameter "aws_client" seems to be empty' unless params['aws_client']
raise 'Unable to connect to AWS. Parameter "access_key_id" is missing' if params['aws_client']['access_key_id'].blank?
raise 'Unable to connect to AWS. Parameter "secret_access_key" is missing' if params['aws_client']['secret_access_key'].blank?
s3_config = params['aws_client']
elsif params.key?('s3_client')
raise 'Unable to connect to AWS. Parameter "s3_client" seems to be empty' unless params['s3_client']
raise 'Unable to connect to AWS. Parameter "accessKey" is missing' if params['s3_client']['accessKey'].blank?
raise 'Unable to connect to AWS. Parameter "secretKey" is missing' if params['s3_client']['secretKey'].blank?
raise 'Unable to connect to AWS. Parameter "bucket" is missing' if params['s3_client']['bucket'].blank?
s3_config['access_key_id'] = params['s3_client']['accessKey']
s3_config['secret_access_key'] = params['s3_client']['secretKey']
s3_config['region'] = params['s3_client']['region']
end
s3_config
end