diff --git a/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb b/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb index 2f28d8ff85b9f8dd4afc26276dc861be37dca24f_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvcmVjaXBlcy9naXRsYWItcmFpbHMucmI=..516a0c1f3329e90ed8cbedfcd5bd1ec22a8ecefc_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvcmVjaXBlcy9naXRsYWItcmFpbHMucmI= 100644 --- a/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb +++ b/files/gitlab-cookbooks/gitlab/recipes/gitlab-rails.rb @@ -272,7 +272,13 @@ owner "root" group "root" mode "0644" - variables(redis_url: url, redis_sentinels: sentinels, redis_sentinels_password: sentinels_password, redis_enable_client: redis_enable_client) + variables( + redis_url: url, + redis_sentinels: sentinels, + redis_sentinels_password: sentinels_password, + redis_enable_client: redis_enable_client, + redis_extra_config_command: redis_extra_config_command + ) dependent_services.each { |svc| notifies :restart, svc } sensitive true end diff --git a/files/gitlab-cookbooks/gitlab/templates/default/cable.yml.erb b/files/gitlab-cookbooks/gitlab/templates/default/cable.yml.erb index 2f28d8ff85b9f8dd4afc26276dc861be37dca24f_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvY2FibGUueW1sLmVyYg==..516a0c1f3329e90ed8cbedfcd5bd1ec22a8ecefc_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvY2FibGUueW1sLmVyYg== 100644 --- a/files/gitlab-cookbooks/gitlab/templates/default/cable.yml.erb +++ b/files/gitlab-cookbooks/gitlab/templates/default/cable.yml.erb @@ -1,4 +1,7 @@ production: + <%- if @redis_extra_config_command -%> + config_command: "<%= @redis_extra_config_command %>" + <%- end -%> adapter: redis url: <%= @redis_url %> <% if !@redis_enable_client %> diff --git a/spec/chef/cookbooks/gitlab/recipes/gitlab-rails_spec.rb b/spec/chef/cookbooks/gitlab/recipes/gitlab-rails_spec.rb index 2f28d8ff85b9f8dd4afc26276dc861be37dca24f_c3BlYy9jaGVmL2Nvb2tib29rcy9naXRsYWIvcmVjaXBlcy9naXRsYWItcmFpbHNfc3BlYy5yYg==..516a0c1f3329e90ed8cbedfcd5bd1ec22a8ecefc_c3BlYy9jaGVmL2Nvb2tib29rcy9naXRsYWIvcmVjaXBlcy9naXRsYWItcmFpbHNfc3BlYy5yYg== 100644 --- a/spec/chef/cookbooks/gitlab/recipes/gitlab-rails_spec.rb +++ b/spec/chef/cookbooks/gitlab/recipes/gitlab-rails_spec.rb @@ -695,6 +695,13 @@ expect(generated_yml.dig('production', 'config_command')).to eq(global_command) } end + + it 'populates cable.yml with specified config command' do + expect(chef_run).to render_file("/var/opt/gitlab/gitlab-rails/etc/cable.yml").with_content { |content| + generated_yml = YAML.safe_load(content) + expect(generated_yml.dig('production', 'config_command')).to eq(global_command) + } + end end context 'with separate command for an instance' do