We have a shoryuken worker process setup in rails application (ruby 2.6.6, rails > 5). this is the shoryuken.yml.erb file
:aws:
:access_key_id: ?
:secret_access_key: ?
:region: <%= Settings.aws.region %>
:concurrency: 10
:daemon: false
:pidfile: tmp/shoryuken.pid
:logfile: log/shoryuken.log.<%= Time.now.strftime('%Y%m%d') %>
:queues:
- [<%= Settings.aws.sqs.use_case_1_queue_name %>, 2]
- [<%= Settings.aws.sqs.use_case_2_queue_name %>, 1]
development:
:verbose: true
And we start the worker using shoryuken -R -C ./shoryuken.yml
Please note the -R option since we would want it to run rails initializers in order to access Settings
constant in the above shoryuken.yml.erb
It all looked good but then we figured out that the AWS credentials are not being stored in application setting , but in IAM role. So how will I pass the aws-sdk credential (stored using IAM) to shoryuken process.
If there are no solution, then I will need to finally store aws credentials in application setting which might be a security issue according to infra team.
Thank you for this wonderful library . Awaiting a response on this issue