diff --git a/changelogs/unreleased/54153-rename-cron-job.yml b/changelogs/unreleased/54153-rename-cron-job.yml new file mode 100644 index 0000000000000000000000000000000000000000..c3683714ff0a529522b1557e21acf6b568856a74_Y2hhbmdlbG9ncy91bnJlbGVhc2VkLzU0MTUzLXJlbmFtZS1jcm9uLWpvYi55bWw= --- /dev/null +++ b/changelogs/unreleased/54153-rename-cron-job.yml @@ -0,0 +1,5 @@ +--- +title: Rename instance statistics count worker +merge_request: 5021 +author: +type: other diff --git a/files/gitlab-config-template/gitlab.rb.template b/files/gitlab-config-template/gitlab.rb.template index 4a8efa0696b716e6b632d4693318af2d8888b0c6_ZmlsZXMvZ2l0bGFiLWNvbmZpZy10ZW1wbGF0ZS9naXRsYWIucmIudGVtcGxhdGU=..c3683714ff0a529522b1557e21acf6b568856a74_ZmlsZXMvZ2l0bGFiLWNvbmZpZy10ZW1wbGF0ZS9naXRsYWIucmIudGVtcGxhdGU= 100644 --- a/files/gitlab-config-template/gitlab.rb.template +++ b/files/gitlab-config-template/gitlab.rb.template @@ -171,7 +171,7 @@ # gitlab_rails['remove_unaccepted_member_invites_cron_worker'] = "10 15 * * *" # gitlab_rails['schedule_migrate_external_diffs_worker_cron'] = "15 * * * *" # gitlab_rails['ci_platform_metrics_update_cron_worker'] = '47 9 * * *' -# gitlab_rails['analytics_instance_statistics_count_job_trigger_worker_cron'] = "50 23 */1 * *" +# gitlab_rails['analytics_usage_trends_count_job_trigger_worker_cron'] = "50 23 */1 * *" # gitlab_rails['member_invitation_reminder_emails_worker_cron'] = "0 0 * * *" # gitlab_rails['user_status_cleanup_batch_worker_cron'] = "* * * * *" diff --git a/files/gitlab-cookbooks/gitlab/attributes/default.rb b/files/gitlab-cookbooks/gitlab/attributes/default.rb index 4a8efa0696b716e6b632d4693318af2d8888b0c6_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvYXR0cmlidXRlcy9kZWZhdWx0LnJi..c3683714ff0a529522b1557e21acf6b568856a74_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvYXR0cmlidXRlcy9kZWZhdWx0LnJi 100644 --- a/files/gitlab-cookbooks/gitlab/attributes/default.rb +++ b/files/gitlab-cookbooks/gitlab/attributes/default.rb @@ -141,6 +141,7 @@ default['gitlab']['gitlab-rails']['geo_repository_verification_primary_batch_worker_cron'] = nil default['gitlab']['gitlab-rails']['geo_repository_verification_secondary_scheduler_worker_cron'] = nil default['gitlab']['gitlab-rails']['analytics_instance_statistics_count_job_trigger_worker_cron'] = nil +default['gitlab']['gitlab-rails']['analytics_usage_trends_count_job_trigger_worker_cron'] = nil default['gitlab']['gitlab-rails']['member_invitation_reminder_emails_worker_cron'] = nil default['gitlab']['gitlab-rails']['user_status_cleanup_batch_worker_cron'] = nil default['gitlab']['gitlab-rails']['pseudonymizer_worker_cron'] = nil diff --git a/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb b/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb index 4a8efa0696b716e6b632d4693318af2d8888b0c6_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvZ2l0bGFiLnltbC5lcmI=..c3683714ff0a529522b1557e21acf6b568856a74_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9naXRsYWIvdGVtcGxhdGVzL2RlZmF1bHQvZ2l0bGFiLnltbC5lcmI= 100644 --- a/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb +++ b/files/gitlab-cookbooks/gitlab/templates/default/gitlab.yml.erb @@ -547,10 +547,10 @@ cron: "<%= @elastic_index_bulk_cron %>" <% end %> - # Worker for triggering counter jobs for instance statistics - <% unless @analytics_instance_statistics_count_job_trigger_worker_cron.nil? %> - analytics_instance_statistics_count_job_trigger_worker: - cron: "<%= @analytics_instance_statistics_count_job_trigger_worker_cron %>" + # Worker for triggering counter jobs for usage trends and keep backward compatibiltity with analytics_instance_statistics_count_job_trigger_worker_cron until 14.0 + <% unless @analytics_usage_trends_count_job_trigger_worker_cron.nil? && @analytics_instance_statistics_count_job_trigger_worker_cron.nil? %> + analytics_usage_trends_count_job_trigger_worker: + cron: "<%= @analytics_usage_trends_count_job_trigger_worker_cron || @analytics_instance_statistics_count_job_trigger_worker_cron %>" <% end %> # Worker for triggering member invitation reminder emails diff --git a/files/gitlab-cookbooks/package/libraries/deprecations.rb b/files/gitlab-cookbooks/package/libraries/deprecations.rb index 4a8efa0696b716e6b632d4693318af2d8888b0c6_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9wYWNrYWdlL2xpYnJhcmllcy9kZXByZWNhdGlvbnMucmI=..c3683714ff0a529522b1557e21acf6b568856a74_ZmlsZXMvZ2l0bGFiLWNvb2tib29rcy9wYWNrYWdlL2xpYnJhcmllcy9kZXByZWNhdGlvbnMucmI= 100644 --- a/files/gitlab-cookbooks/package/libraries/deprecations.rb +++ b/files/gitlab-cookbooks/package/libraries/deprecations.rb @@ -102,6 +102,12 @@ deprecation: '13.6', removal: '14.0', note: 'The experimental_queue_selector option is now called queue_selector.' + }, + { + config_keys: %w(gitlab gitlab-rails analytics_instance_statistics_count_job_trigger_worker_cron), + deprecation: '13.10', + removal: '14.0', + note: 'The config have been renamed, use analytics_usage_trends_count_job_trigger_worker_cron option.' } ] diff --git a/spec/chef/recipes/gitlab-rails/cron_jobs_spec.rb b/spec/chef/recipes/gitlab-rails/cron_jobs_spec.rb index 4a8efa0696b716e6b632d4693318af2d8888b0c6_c3BlYy9jaGVmL3JlY2lwZXMvZ2l0bGFiLXJhaWxzL2Nyb25fam9ic19zcGVjLnJi..c3683714ff0a529522b1557e21acf6b568856a74_c3BlYy9jaGVmL3JlY2lwZXMvZ2l0bGFiLXJhaWxzL2Nyb25fam9ic19zcGVjLnJi 100644 --- a/spec/chef/recipes/gitlab-rails/cron_jobs_spec.rb +++ b/spec/chef/recipes/gitlab-rails/cron_jobs_spec.rb @@ -16,7 +16,7 @@ where(:gitlab_yml_setting, :gitlab_rb_setting) do 'admin_email_worker' | 'admin_email_worker_cron' 'analytics_devops_adoption_create_all_snapshots_worker' | 'analytics_devops_adoption_create_all_snapshots_worker' - 'analytics_instance_statistics_count_job_trigger_worker' | 'analytics_instance_statistics_count_job_trigger_worker_cron' + 'analytics_usage_trends_count_job_trigger_worker' | 'analytics_usage_trends_count_job_trigger_worker_cron' 'ci_archive_traces_cron_worker' | 'ci_archive_traces_cron_worker_cron' 'ci_platform_metrics_update_cron_worker' | 'ci_platform_metrics_update_cron_worker' 'elastic_index_bulk_cron_worker' | 'elastic_index_bulk_cron' @@ -63,5 +63,37 @@ end end end + + describe 'backward compatibility for `analytics_instance_statistics_count_job_trigger_worker_cron` setting' do + before do + stub_gitlab_rb(gitlab_rails: settings).transform_keys(&:to_sym) + end + + subject(:cron_jobs) { gitlab_yml[:production][:cron_jobs] } + + context 'when the setting is not set' do + let(:settings) { { analytics_instance_statistics_count_job_trigger_worker_cron: nil } } + + it 'does not set any cron job' do + expect(cron_jobs).to be_nil + end + end + + context 'when the setting is set' do + let(:settings) { { analytics_instance_statistics_count_job_trigger_worker_cron: '1 2 3 4 5' } } + + it 'sets the analytics_usage_trends_count_job_trigger_worker_cron setting' do + expect(cron_jobs[:analytics_usage_trends_count_job_trigger_worker]).to eq({ cron: '1 2 3 4 5' }) + end + end + + context 'when the new setting is set' do + let(:settings) { { analytics_usage_trends_count_job_trigger_worker_cron: '1 2 3 4 5' } } + + it 'sets the analytics_usage_trends_count_job_trigger_worker_cron setting' do + expect(cron_jobs[:analytics_usage_trends_count_job_trigger_worker]).to eq({ cron: '1 2 3 4 5' }) + end + end + end end end