Update sidekiq-cron to 1.4.0
What does this MR do and why?
This brings us to a version of sidekiq-cron that is tested against Ruby 3.
For #372374 (closed) and, ultimately, #369392 (closed).
Changelogs etc.
- sidekiq-cron
- et-orbi
- raabro
Note that https://github.com/ondrejbartas/sidekiq-cron/issues/350 is filed against sidekiq-cron 1.7.0. However, we don't have date_as_argument
set, and I can't reproduce. For instance, this shows args
empty, as expected:
$ gdk redis-cli -n 1 hgetall resque:gitlab:cron_job:batched_background_migrations_worker
1) "args"
2) "[]"
3) "date_as_argument"
4) "false"
5) "symbolize_args"
6) "false"
7) "status"
8) "enabled"
9) "active_job"
10) "false"
11) "cron"
12) "* * * * *"
13) "queue_name_delimiter"
14) ""
15) "klass"
16) "Database::BatchedBackgroundMigrationWorker"
17) "last_enqueue_time"
18) "2022-09-06 15:43:05 +0000"
19) "queue_name_prefix"
20) ""
21) "description"
22) ""
23) "name"
24) "batched_background_migrations_worker"
25) "message"
26) "{\"retry\":false,\"queue\":\"default\",\"backtrace\":true,\"version\":0,\"queue_namespace\":\"cronjob\",\"class\":\"Database::BatchedBackgroundMigrationWorker\",\"args\":[]}"
How to set up and validate locally
- On master, start the GDK.
- Check out this branch.
- Restart
rails-web
andrails-background-job
. - Sidekiq jobs should still work, especially cron jobs.
A good test:
$ gdk tail rails-background-jobs | sed 's/^.* : ....//' | jq -c '[.class, .args, .job_status]'
["UpdateAllMirrorsWorker",[],"start"]
["ScheduleMergeRequestCleanupRefsWorker",[],"start"]
["UserStatusCleanup::BatchWorker",[],"start"]
["Database::BatchedBackgroundMigrationWorker",[],"start"]
["ElasticIndexInitialBulkCronWorker",[],"done"]
["IncidentManagement::PendingEscalations::ScheduleCheckCronWorker",[],"done"]
["ElasticIndexBulkCronWorker",[],"done"]
["LooseForeignKeys::CleanupWorker",[],"done"]
["Database::BatchedBackgroundMigration::CiDatabaseWorker",[],"done"]
["Geo::SidekiqCronConfigWorker",[],"done"]
["ScheduleMergeRequestCleanupRefsWorker",[],"done"]
["UpdateAllMirrorsWorker",[],"done"]
["UserStatusCleanup::BatchWorker",[],"done"]
["Database::BatchedBackgroundMigrationWorker",[],"done"]
["NewIssueWorker",["522","1","[FILTERED]"],"start"]
["Issues::PlacementWorker",["[FILTERED]","24"],"start"]
["Namespaces::OnboardingIssueCreatedWorker",["1"],"start"]
["WebHookWorker",["1","[FILTERED]","issue_hooks","{}"],"start"]
["Namespaces::OnboardingIssueCreatedWorker",["1"],"done"]
["Issues::PlacementWorker",["[FILTERED]","24"],"done"]
[null,null,null]
[null,null,null]
["NewIssueWorker",["522","1","[FILTERED]"],"done"]
[null,null,null]
["WebHooks::LogExecutionWorker",["1","[FILTERED]","ok","707c251b340eef6831cffe70"],"start"]
["WebHookWorker",["1","[FILTERED]","issue_hooks","{}"],"done"]
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Sean McGivern