Skip to content

Show pipeline/stage progress via favicon (in MR page)

Shinya Maeda requested to merge show-pipeline-progress into master

What does this MR do?

We can calculate pipeline/stage progress by counting active builds per total count of builds. If there is one running build and three finished builds, then the progress of the pipeline is 75%. It's that simple, but, we don't show this information anywhere in GitLab, today.

There is the other approach to extract more accurate build progress by extracting sections from job traces, however, there are multiple hurdles with it that 1. It has to store progress in Redis per build 2. Calculating progress could incur N+1 to Redis. That said, that approach is quite hard to accomplish without harming our production load.

In this iteration, we show the calculated progress in favicon as the first iteration. Thus, this MR requires UX frontend input.

All we need to do extending this running icon Screenshot_from_2019-07-07_11-31-10 to:

  1. When progress is less than 25%, the system shows this icon (TBD).
  2. When progress is more than 25% and less than 50%, the system shows this icon (TBD).
  3. When progress is more than 50% and less than 75%, the system shows this icon (TBD).
  4. When progress is more than 75% and less than 100%, the system shows this icon (TBD).

Related: https://gitlab.com/gitlab-org/gitlab-ce/issues/28168

Does this MR meet the acceptance criteria?

Conformity

Performance and testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Shinya Maeda

Merge request reports