Skip to content

Automatically upgrade cluster applications

Problem to solve

Provide continuous upgrades for a cluster without the need for user intervention

Target audience

Further details

In https://gitlab.com/gitlab-org/gitlab-ce/issues/49384 we added ability to manually upgrade cluster applications

Proposal

  • Automatically upgrade the installed runner application to the latest runner version in sync with GitLab

Application upgrade

Show when last upgraded, the chart version, and link to the chart.

k8-application__runner

Application fails to automatically update

When an application upgrade fails, we should retry # times (same as jobs, which I think is 3 times). When the upgrade fails # times, we should notify the group/project owner of the failure via email.

k8-application__email--upgrade-failed

[Retry upgrade] takes the user the cluster detail view.

(Note: the project line would not appear for group level clusters)

If the upgrade fails # times, we should revert back to the previous working version (when possible) and allow the user to manually retry.

k8-application__runner--upgrade-failed

k8-application__runner--upgrading

If successful, we show the success alert. If unsuccessful, we show the danger alert once again.

k8-application__runner--upgrade-success-2

What does success look like, and how can we measure that?

Links / references

Edited by Thong Kuah