wrap each line in a script block as a section
What does this MR do?
For scripts that have multiple lines, wraps each line as a collapsible section. Allows timestamp information for each line of the build script. First step is to implement it for the Bash shell.
This is protected behind a feature flag FF_SCRIPT_SECTIONS
This MR only adds support for bash. #28119 will add support for powershell & pwsh
Why was this MR needed?
It's a need for many customers to be able to see how long different steps of their script took.
What's the best way to test this MR?
Add a .gitlab-ci.yml
with a script block with multiple lines eg:
job:
stage: test
script:
- sleep 1
- sleep 2
- sleep 3
- sleep 4
- sleep 5
When a build runs, the output in the job output window should show each line in the script block with a time duration
What are the relevant issue numbers?
closes #4835 (closed).
Edited by John Cai