Recalculate ci_runner_versions.status when required
Currently, ci_runner_versions entries are being generated by the ci_runner_versions_reconciliation_worker cron job, which runs hourly at 20 minutes past the hour. Since we can have hundreds of thousands of self-managed GitLab instances, this can represent a big load on the GitLab Releases endpoint. A suggested improvement would be:
-
add after_savehook to Ci::Runner so that when version is updated, the version table is correctly updated (!93191 (merged)); -
make ReconcileExistingRunnerVersionsServicerun@daily(!93172 (merged), gitlab-org/charts/gitlab!2693 (merged)).
Edited by Pedro Pombeiro