diff --git a/files/gitlab-cookbooks/gitlab-ee/attributes/default.rb b/files/gitlab-cookbooks/gitlab-ee/attributes/default.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvYXR0cmlidXRlcy9kZWZhdWx0LnJi..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvYXR0cmlidXRlcy9kZWZhdWx0LnJi 100644 --- a/files/gitlab-cookbooks/gitlab-ee/attributes/default.rb +++ b/files/gitlab-cookbooks/gitlab-ee/attributes/default.rb @@ -28,19 +28,6 @@ default['gitlab']['sentinel']['failover_timeout'] = 60000 default['gitlab']['sentinel']['myid'] = nil -#### -# Sidekiq Cluster -#### -default['gitlab']['sidekiq-cluster']['enable'] = false -default['gitlab']['sidekiq-cluster']['ha'] = false -default['gitlab']['sidekiq-cluster']['log_directory'] = "/var/log/gitlab/sidekiq-cluster" -default['gitlab']['sidekiq-cluster']['interval'] = nil -default['gitlab']['sidekiq-cluster']['max_concurrency'] = nil -default['gitlab']['sidekiq-cluster']['min_concurrency'] = nil -default['gitlab']['sidekiq-cluster']['queue_groups'] = [] -default['gitlab']['sidekiq-cluster']['negate'] = false -default['gitlab']['sidekiq-cluster']['experimental_queue_selector'] = false - ### # Geo: Common (primary or secondary) node configuration ### diff --git a/files/gitlab-cookbooks/gitlab-ee/libraries/sidekiq_cluster.rb b/files/gitlab-cookbooks/gitlab-ee/libraries/sidekiq_cluster.rb deleted file mode 100644 index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvbGlicmFyaWVzL3NpZGVraXFfY2x1c3Rlci5yYg==..0000000000000000000000000000000000000000 --- a/files/gitlab-cookbooks/gitlab-ee/libraries/sidekiq_cluster.rb +++ /dev/null @@ -1,30 +0,0 @@ -# -# Copyright:: Copyright (c) 2016 GitLab Inc. -# License:: Apache License, Version 2.0 -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -module SidekiqCluster - class << self - def parse_variables - return unless Gitlab['sidekiq_cluster']['enable'] - - # Ensure queues is an array - Gitlab['sidekiq_cluster']['queue_groups'] = Array(Gitlab['sidekiq_cluster']['queue_groups']) - - # Error out if the queue hasn't been set - raise "The sidekiq_cluster queue_groups must be set in order to use the sidekiq-cluster service" if Gitlab['sidekiq_cluster']['queue_groups'].empty? - end - end -end diff --git a/files/gitlab-cookbooks/gitlab-ee/recipes/default.rb b/files/gitlab-cookbooks/gitlab-ee/recipes/default.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvcmVjaXBlcy9kZWZhdWx0LnJi..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvcmVjaXBlcy9kZWZhdWx0LnJi 100644 --- a/files/gitlab-cookbooks/gitlab-ee/recipes/default.rb +++ b/files/gitlab-cookbooks/gitlab-ee/recipes/default.rb @@ -21,7 +21,6 @@ %w[ sentinel - sidekiq-cluster geo-postgresql geo-logcursor pgbouncer diff --git a/files/gitlab-cookbooks/gitlab-ee/recipes/sidekiq-cluster.rb b/files/gitlab-cookbooks/gitlab-ee/recipes/sidekiq-cluster.rb deleted file mode 100644 index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvcmVjaXBlcy9zaWRla2lxLWNsdXN0ZXIucmI=..0000000000000000000000000000000000000000 --- a/files/gitlab-cookbooks/gitlab-ee/recipes/sidekiq-cluster.rb +++ /dev/null @@ -1,45 +0,0 @@ -# -# Copyright:: Copyright (c) 2016 GitLab Inc. -# License:: Apache License, Version 2.0 -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -account_helper = AccountHelper.new(node) -log_directory = node['gitlab']['sidekiq-cluster']['log_directory'] - -metrics_dir = File.join(node['gitlab']['runtime-dir'].to_s, 'gitlab/sidekiq-cluster') unless node['gitlab']['runtime-dir'].nil? - -directory log_directory do - owner account_helper.gitlab_user - mode '0700' - recursive true -end - -runit_service 'sidekiq-cluster' do - down node['gitlab']['sidekiq-cluster']['ha'] - template_name 'sidekiq-cluster' - options({ - user: account_helper.gitlab_user, - groupname: account_helper.gitlab_group, - log_directory: log_directory, - metrics_dir: metrics_dir, - clean_metrics_dir: true - }.merge(params)) - log_options node['gitlab']['logging'].to_hash.merge(node['gitlab']['sidekiq-cluster'].to_hash) -end - -if node['gitlab']['bootstrap']['enable'] - execute "/opt/gitlab/bin/gitlab-ctl start sidekiq-cluster" do - retries 20 - end -end diff --git a/files/gitlab-cookbooks/gitlab-ee/recipes/sidekiq-cluster_disable.rb b/files/gitlab-cookbooks/gitlab-ee/recipes/sidekiq-cluster_disable.rb deleted file mode 100644 index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvcmVjaXBlcy9zaWRla2lxLWNsdXN0ZXJfZGlzYWJsZS5yYg==..0000000000000000000000000000000000000000 --- a/files/gitlab-cookbooks/gitlab-ee/recipes/sidekiq-cluster_disable.rb +++ /dev/null @@ -1,20 +0,0 @@ -# -# Copyright:: Copyright (c) 2016 GitLab Inc. -# License:: Apache License, Version 2.0 -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -runit_service "sidekiq-cluster" do - action :disable -end diff --git a/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-log-config.erb b/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-log-config.erb deleted file mode 100644 index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvdGVtcGxhdGVzL2RlZmF1bHQvc3Ytc2lkZWtpcS1jbHVzdGVyLWxvZy1jb25maWcuZXJi..0000000000000000000000000000000000000000 --- a/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-log-config.erb +++ /dev/null @@ -1,6 +0,0 @@ -<%= "s#@svlogd_size" if @svlogd_size %> -<%= "n#@svlogd_num" if @svlogd_num %> -<%= "t#@svlogd_timeout" if @svlogd_timeout %> -<%= "!#@svlogd_filter" if @svlogd_filter %> -<%= "u#@svlogd_udp" if @svlogd_udp %> -<%= "p#@svlogd_prefix" if @svlogd_prefix %> diff --git a/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-log-run.erb b/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-log-run.erb deleted file mode 100644 index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvdGVtcGxhdGVzL2RlZmF1bHQvc3Ytc2lkZWtpcS1jbHVzdGVyLWxvZy1ydW4uZXJi..0000000000000000000000000000000000000000 --- a/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-log-run.erb +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec svlogd <% unless node['gitlab']['sidekiq']['log_format'].eql?('json') %>-tt <% end %><%= @options[:log_directory] %> diff --git a/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-run.erb b/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-run.erb deleted file mode 100644 index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWItZWUvdGVtcGxhdGVzL2RlZmF1bHQvc3Ytc2lkZWtpcS1jbHVzdGVyLXJ1bi5lcmI=..0000000000000000000000000000000000000000 --- a/files/gitlab-cookbooks/gitlab-ee/templates/default/sv-sidekiq-cluster-run.erb +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh - -cd <%= node['gitlab']['gitlab-rails']['dir'] %>/working - -exec 2>&1 -<%= render("make_metrics_rundir.erb", cookbook: 'gitlab') %> -<%= render("mount_point_check.erb", cookbook: 'gitlab') %> -exec chpst -e /opt/gitlab/etc/gitlab-rails/env -P \ - -U <%= @options[:user] %>:<%= @options[:groupname] %> \ - -u <%= @options[:user] %>:<%= @options[:groupname] %> \ - /usr/bin/env \ - prometheus_multiproc_dir="${prometheus_run_dir}" \ - /opt/gitlab/embedded/service/gitlab-rails/bin/sidekiq-cluster \ - -e <%= node['gitlab']['gitlab-rails']['environment'] %> \ - -r /opt/gitlab/embedded/service/gitlab-rails \ - <% if node['gitlab']['sidekiq-cluster']['interval'] %> - -i <%= node['gitlab']['sidekiq-cluster']['interval'] %> \ - <% end %> - <% if node['gitlab']['sidekiq-cluster']['max_concurrency'] %> - -m <%= node['gitlab']['sidekiq-cluster']['max_concurrency'] %> \ - <% end %> - <% if node['gitlab']['sidekiq-cluster']['min_concurrency'] %> - --min-concurrency <%= node['gitlab']['sidekiq-cluster']['min_concurrency'] %> \ - <% end %> - <% if node['gitlab']['sidekiq-cluster']['experimental_queue_selector'] %> - --experimental-queue-selector \ - <% end %> - <% node['gitlab']['sidekiq-cluster']['queue_groups'].each do |queue| %> - "<%= queue %>" \ - <% end %> - <% if node['gitlab']['sidekiq-cluster']['negate'] %> - --negate \ - <% end %> - -# Do not remove this line; it prevents trouble with the trailing backslashes above. diff --git a/files/gitlab-cookbooks/gitlab/attributes/default.rb b/files/gitlab-cookbooks/gitlab/attributes/default.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvYXR0cmlidXRlcy9kZWZhdWx0LnJi..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvYXR0cmlidXRlcy9kZWZhdWx0LnJi 100644 --- a/files/gitlab-cookbooks/gitlab/attributes/default.rb +++ b/files/gitlab-cookbooks/gitlab/attributes/default.rb @@ -468,6 +468,19 @@ default['gitlab']['sidekiq']['listen_address'] = "127.0.0.1" default['gitlab']['sidekiq']['listen_port'] = 8082 +#### +# Sidekiq Cluster +#### +default['gitlab']['sidekiq-cluster']['enable'] = false +default['gitlab']['sidekiq-cluster']['ha'] = false +default['gitlab']['sidekiq-cluster']['log_directory'] = "/var/log/gitlab/sidekiq-cluster" +default['gitlab']['sidekiq-cluster']['interval'] = nil +default['gitlab']['sidekiq-cluster']['max_concurrency'] = nil +default['gitlab']['sidekiq-cluster']['min_concurrency'] = nil +default['gitlab']['sidekiq-cluster']['queue_groups'] = [] +default['gitlab']['sidekiq-cluster']['negate'] = false +default['gitlab']['sidekiq-cluster']['experimental_queue_selector'] = false + ### # gitlab-shell ### diff --git a/files/gitlab-cookbooks/gitlab/libraries/sidekiq_cluster.rb b/files/gitlab-cookbooks/gitlab/libraries/sidekiq_cluster.rb new file mode 100644 index 0000000000000000000000000000000000000000..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvbGlicmFyaWVzL3NpZGVraXFfY2x1c3Rlci5yYg== --- /dev/null +++ b/files/gitlab-cookbooks/gitlab/libraries/sidekiq_cluster.rb @@ -0,0 +1,30 @@ +# +# Copyright:: Copyright (c) 2016 GitLab Inc. +# License:: Apache License, Version 2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +module SidekiqCluster + class << self + def parse_variables + return unless Gitlab['sidekiq_cluster']['enable'] + + # Ensure queues is an array + Gitlab['sidekiq_cluster']['queue_groups'] = Array(Gitlab['sidekiq_cluster']['queue_groups']) + + # Error out if the queue hasn't been set + raise "The sidekiq_cluster queue_groups must be set in order to use the sidekiq-cluster service" if Gitlab['sidekiq_cluster']['queue_groups'].empty? + end + end +end diff --git a/files/gitlab-cookbooks/gitlab/recipes/default.rb b/files/gitlab-cookbooks/gitlab/recipes/default.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvcmVjaXBlcy9kZWZhdWx0LnJi..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvcmVjaXBlcy9kZWZhdWx0LnJi 100644 --- a/files/gitlab-cookbooks/gitlab/recipes/default.rb +++ b/files/gitlab-cookbooks/gitlab/recipes/default.rb @@ -133,6 +133,7 @@ unicorn puma sidekiq + sidekiq-cluster gitlab-workhorse mailroom nginx diff --git a/files/gitlab-cookbooks/gitlab/recipes/sidekiq-cluster.rb b/files/gitlab-cookbooks/gitlab/recipes/sidekiq-cluster.rb new file mode 100644 index 0000000000000000000000000000000000000000..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvcmVjaXBlcy9zaWRla2lxLWNsdXN0ZXIucmI= --- /dev/null +++ b/files/gitlab-cookbooks/gitlab/recipes/sidekiq-cluster.rb @@ -0,0 +1,45 @@ +# +# Copyright:: Copyright (c) 2016 GitLab Inc. +# License:: Apache License, Version 2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +account_helper = AccountHelper.new(node) +log_directory = node['gitlab']['sidekiq-cluster']['log_directory'] + +metrics_dir = File.join(node['gitlab']['runtime-dir'].to_s, 'gitlab/sidekiq-cluster') unless node['gitlab']['runtime-dir'].nil? + +directory log_directory do + owner account_helper.gitlab_user + mode '0700' + recursive true +end + +runit_service 'sidekiq-cluster' do + down node['gitlab']['sidekiq-cluster']['ha'] + template_name 'sidekiq-cluster' + options({ + user: account_helper.gitlab_user, + groupname: account_helper.gitlab_group, + log_directory: log_directory, + metrics_dir: metrics_dir, + clean_metrics_dir: true + }.merge(params)) + log_options node['gitlab']['logging'].to_hash.merge(node['gitlab']['sidekiq-cluster'].to_hash) +end + +if node['gitlab']['bootstrap']['enable'] + execute "/opt/gitlab/bin/gitlab-ctl start sidekiq-cluster" do + retries 20 + end +end diff --git a/files/gitlab-cookbooks/gitlab/recipes/sidekiq-cluster_disable.rb b/files/gitlab-cookbooks/gitlab/recipes/sidekiq-cluster_disable.rb new file mode 100644 index 0000000000000000000000000000000000000000..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvcmVjaXBlcy9zaWRla2lxLWNsdXN0ZXJfZGlzYWJsZS5yYg== --- /dev/null +++ b/files/gitlab-cookbooks/gitlab/recipes/sidekiq-cluster_disable.rb @@ -0,0 +1,20 @@ +# +# Copyright:: Copyright (c) 2016 GitLab Inc. +# License:: Apache License, Version 2.0 +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +runit_service "sidekiq-cluster" do + action :disable +end diff --git a/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-log-config.erb b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-log-config.erb new file mode 100644 index 0000000000000000000000000000000000000000..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvc3Ytc2lkZWtpcS1jbHVzdGVyLWxvZy1jb25maWcuZXJi --- /dev/null +++ b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-log-config.erb @@ -0,0 +1,6 @@ +<%= "s#@svlogd_size" if @svlogd_size %> +<%= "n#@svlogd_num" if @svlogd_num %> +<%= "t#@svlogd_timeout" if @svlogd_timeout %> +<%= "!#@svlogd_filter" if @svlogd_filter %> +<%= "u#@svlogd_udp" if @svlogd_udp %> +<%= "p#@svlogd_prefix" if @svlogd_prefix %> diff --git a/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-log-run.erb b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-log-run.erb new file mode 100644 index 0000000000000000000000000000000000000000..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvc3Ytc2lkZWtpcS1jbHVzdGVyLWxvZy1ydW4uZXJi --- /dev/null +++ b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-log-run.erb @@ -0,0 +1,2 @@ +#!/bin/sh +exec svlogd <% unless node['gitlab']['sidekiq']['log_format'].eql?('json') %>-tt <% end %><%= @options[:log_directory] %> diff --git a/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-run.erb b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-run.erb new file mode 100644 index 0000000000000000000000000000000000000000..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvc3Ytc2lkZWtpcS1jbHVzdGVyLXJ1bi5lcmI= --- /dev/null +++ b/files/gitlab-cookbooks/gitlab/templates/default/sv-sidekiq-cluster-run.erb @@ -0,0 +1,35 @@ +#!/bin/sh + +cd <%= node['gitlab']['gitlab-rails']['dir'] %>/working + +exec 2>&1 +<%= render("make_metrics_rundir.erb", cookbook: 'gitlab') %> +<%= render("mount_point_check.erb", cookbook: 'gitlab') %> +exec chpst -e /opt/gitlab/etc/gitlab-rails/env -P \ + -U <%= @options[:user] %>:<%= @options[:groupname] %> \ + -u <%= @options[:user] %>:<%= @options[:groupname] %> \ + /usr/bin/env \ + prometheus_multiproc_dir="${prometheus_run_dir}" \ + /opt/gitlab/embedded/service/gitlab-rails/bin/sidekiq-cluster \ + -e <%= node['gitlab']['gitlab-rails']['environment'] %> \ + -r /opt/gitlab/embedded/service/gitlab-rails \ + <% if node['gitlab']['sidekiq-cluster']['interval'] %> + -i <%= node['gitlab']['sidekiq-cluster']['interval'] %> \ + <% end %> + <% if node['gitlab']['sidekiq-cluster']['max_concurrency'] %> + -m <%= node['gitlab']['sidekiq-cluster']['max_concurrency'] %> \ + <% end %> + <% if node['gitlab']['sidekiq-cluster']['min_concurrency'] %> + --min-concurrency <%= node['gitlab']['sidekiq-cluster']['min_concurrency'] %> \ + <% end %> + <% if node['gitlab']['sidekiq-cluster']['experimental_queue_selector'] %> + --experimental-queue-selector \ + <% end %> + <% node['gitlab']['sidekiq-cluster']['queue_groups'].each do |queue| %> + "<%= queue %>" \ + <% end %> + <% if node['gitlab']['sidekiq-cluster']['negate'] %> + --negate \ + <% end %> + +# Do not remove this line; it prevents trouble with the trailing backslashes above. diff --git a/files/gitlab-cookbooks/package/libraries/config/gitlab.rb b/files/gitlab-cookbooks/package/libraries/config/gitlab.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9wYWNrYWdlL2xpYnJhcmllcy9jb25maWcvZ2l0bGFiLnJi..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9wYWNrYWdlL2xpYnJhcmllcy9jb25maWcvZ2l0bGFiLnJi 100644 --- a/files/gitlab-cookbooks/package/libraries/config/gitlab.rb +++ b/files/gitlab-cookbooks/package/libraries/config/gitlab.rb @@ -72,8 +72,7 @@ ## Attributes under node['gitlab'] attribute_block 'gitlab' do # EE attributes - ee_attribute('sidekiq_cluster', priority: 20).use { SidekiqCluster } - ee_attribute('geo_postgresql', priority: 20).use { GeoPostgresql } + ee_attribute('geo_postgresql', priority: 20).use { GeoPostgresql } ee_attribute('geo_secondary') ee_attribute('geo_logcursor') ee_attribute('sentinel').use { Sentinel } @@ -102,6 +101,7 @@ attribute('user') attribute('gitlab_ci') attribute('sidekiq') + attribute('sidekiq_cluster').use { SidekiqCluster } attribute('mattermost_nginx') attribute('pages_nginx') attribute('registry_nginx') diff --git a/spec/chef/recipes/sidekiq-cluster_spec.rb b/spec/chef/recipes/sidekiq-cluster_spec.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_c3BlYy9jaGVmL3JlY2lwZXMvc2lkZWtpcS1jbHVzdGVyX3NwZWMucmI=..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_c3BlYy9jaGVmL3JlY2lwZXMvc2lkZWtpcS1jbHVzdGVyX3NwZWMucmI= 100644 --- a/spec/chef/recipes/sidekiq-cluster_spec.rb +++ b/spec/chef/recipes/sidekiq-cluster_spec.rb @@ -1,8 +1,8 @@ require 'chef_helper' -describe 'gitlab-ee::sidekiq-cluster' do +describe 'gitlab::sidekiq-cluster' do let(:chef_run) do runner = ChefSpec::SoloRunner.new( step_into: %w(runit_service), path: 'spec/fixtures/fauxhai/ubuntu/16.04.json' ) @@ -4,9 +4,9 @@ let(:chef_run) do runner = ChefSpec::SoloRunner.new( step_into: %w(runit_service), path: 'spec/fixtures/fauxhai/ubuntu/16.04.json' ) - runner.converge('gitlab-ee::default') + runner.converge('gitlab::default') end before do diff --git a/spec/libraries/sidekiq_cluster_spec.rb b/spec/libraries/sidekiq_cluster_spec.rb index c9bcf0ec60ebd6a1916305fd685e77881431cec1_c3BlYy9saWJyYXJpZXMvc2lkZWtpcV9jbHVzdGVyX3NwZWMucmI=..46c79915d02e457c36f31ce39fcfdfddf6ba7cce_c3BlYy9saWJyYXJpZXMvc2lkZWtpcV9jbHVzdGVyX3NwZWMucmI= 100644 --- a/spec/libraries/sidekiq_cluster_spec.rb +++ b/spec/libraries/sidekiq_cluster_spec.rb @@ -1,7 +1,7 @@ require 'chef_helper' describe SidekiqCluster do - let(:chef_run) { ChefSpec::SoloRunner.converge('gitlab-ee::default') } + let(:chef_run) { ChefSpec::SoloRunner.converge('gitlab::default') } before { allow(Gitlab).to receive(:[]).and_call_original } describe 'when queue_groups is passed a string instead of an array' do