Port/reconcile upgrade functionality to CE
Problem
We have helm upgrade related functionality in EE so that Prometheus can add/update remove alerts. We will not have a good time when we develop upgrade of GitLab Managed apps in CE and have to reconcile the two.
Proposal
Port the following from EE:
-
EE extension to BaseHelmService -
EE extension to Clusters::Applications::Prometheus. Allow#upgrade_commandto optionally replace values. -
Reconcile: Prometheus#upgrade_commandandPrometheus#install_command -
Reconcile: cluster_upgrade_app_worker.rbandcluster_update_app_worker.rb-
PrometheusUpdateServiceminusupdate_configwhich is EE specific
-
-
Reconcile: CheckInstallationProgressServiceandCheckUpgradeProgressService -
Reconcile ClusterWaitForAppInstallationWorkerandClusterWaitForAppUpdateWorker
The above are enabling the GitLab Premium functionality of Prometheus alerting but are also generic type functionality which we will use to upgrade all GitLab Managed apps.
Edited by Thong Kuah