Skip to content

Add progressive loading to job logs

What does this MR do and why?

This MR adds a feature to load previous job logs allowing users to look through large logs instead of having to download and parse the raw log.

Related to #342138

Screenshots or screen recordings

image

📹 Video demo https://youtu.be/2X74mlVWbWM

How to set up and validate locally

  1. Create a new project
  2. Add a new .gitlab-ci.yml to generate a long log, such as:
    long doggo ipsum:
      stage: test
      script:
        - for X in {1..40000}; do printf "%04d - %s\n" $X 'Doggo ipsum very jealous pupper doge, shooberino clouds ur givin me a spook.'; done
  3. Commit the change
  4. Go to the pipeline of the commit
  5. Open the job
  6. See the Showing last n KiB of log (n being a number close to 512, depending on the line length)
  7. Click on the Load additional 512 kb button
  8. See that previous lines are loaded and prepended to the current log lines

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Merge request reports