Configuration Sidekiq pour plusieurs environnements

J'ai regardé plusieurs sources et essayé divers scénarios, mais ne pouvait pas résoudre ce donc la question. Merci de me pointer dans la bonne direction.

Comme tout le monde j'ai 3 env (de développement, de production et de transfert).

J'ai la suite dans ma sidekiq.fichier yml

# Options here can still be overridden by cmd line args.
#   sidekiq -C config.yml  
---
:verbose: false
:namespace: xyz
:logfile: log/sidekiq.log
:concurrency:  25
:strict: false
:pidfile: tmp/pids/sidekiq.pid
:queues:
  - [stg_xyz_tests_queue, 10]
  - [stg_default_xyz_queue, 2]
  - [stg_xyz_default_queue, 3]
development:
  :verbose: true
  :concurrency:  15
  :queues:
    - [dev_xyz_queue, 10]
    - [dev_default_xyz_queue, 2]
    - [dev_xyz_default_queue, 3]
staging:
  :queues:
    - [stg_xyz_queue, 10]
    - [stg_default_xyz_queue, 2]
    - [stg_xyz_default_queue, 3]
production:
  :queues:
    - [prod_xyz_queue, 10]
    - [prod_default_xyz_queue, 2]
    - [prod_xyz_default_queue, 3]

Avec cela, j'ai été en espérant que quand je commence à sidekiq avec la commande

RAILS_ENV=#{rails_env} bundle exec sidekiq -C config/sidekiq.yml

qu'il serait de ramassage de toutes les valeurs du fichier de configuration et de démarrage sidekiq avec les files d'attente et le fichier journal à journal/sidekiq.journal, mais qui ne fonctionne pas.
Sidekiq démarre mais il ne crée que des stg_xyz_tests_queue, stg_default_xyz_queue et stg_xyz_default_queue n'importe quel environnement nous utilisons.

L'autre approche, j'ai essayé a l'aide du code suivant dans le fichier config/environments/développement.rb

  #configure Sidekiq for dev environment
  Sidekiq.configure_server do |config|
    config.options[:namespace] = "xyz"
    config.options[:concurrency] = 25
    config.options[:verbose] = true
    config.options[:strict] = false
    config.options[:logfile] = "log/sidekiq.log"
    config.options[:pidfile] = "tmp/pids/sidekiq.pid"

    queues = Array.new
    10.times do
      queues.push "dev_xyz_queue"
    end

    2.times do
      queues.push "dev_default_xyz_queue"
    end

    3.times do
      queues.push "dev_xyz_default_queue"
    end

    config.options[:queues] = queues
    puts "Sidekiq server config options for development => #{config.options.to_yaml}"
  end

Avec cela, les files d'attente sont créés ok, mais le fichier n'est pas créé ou écrit et j'ai besoin de dupliquer ce code pour tous les 3 environnements.

Quelle est la meilleure façon d'obtenir sidekiq de travailler en toute transparence pour ma configuration
Merci pour votre aide d'avance!!!!!

source d'informationauteur user1687078