Jobs API - Timer for stage breakdown
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Problem to solve
As a DevOps engineer I would like to have access to the individual timers via API that show through the GUI This will help me understand how long the functional code portion of the job takes to complete For example currently via the API I can see
"started_at":"2020-04-24T08:18:13.763Z",
"finished_at":"2020-04-24T08:19:08.699Z",
"duration":54.936386
However in the GUI I can see
https://gitlab.com/something/project-with-pipeline/-/jobs/1234567
Here the before_script and the script section took 43 seconds to complete. So estimating the average time for test cases / deployments to complete is not accurate as there can be periods of time the runner is pending which depending on the set up can be a few mins ( if a new worker node is required to host the container)
Intended users
- Delaney (Development Team Lead)
- Sasha (Software Developer)
- Devon (DevOps Engineer)
- Sidney (Systems Administrator)
- Sam (Security Analyst)
- Rachel (Release Manager)
- Alex (Security Operations Engineer)
- Simone (Software Engineer in Test)
- Allison (Application Ops)
- Priyanka (Platform Engineer)
- Dana (Data Analyst)
User experience goal
The user should be able to query the current jobs API and retrieve the time taken for the sections as shown in the GUI. This information exists somewhere so it shouldn't be too hard to expose it through the API
Proposal
Add more information to the current jobs API which is visible / exists in the GUI layout
Further details
Permissions and Security
Documentation
Availability & Testing
What does success look like, and how can we measure that?
Success to me would be the ability in the above example to query the 43 seconds
from the jobs API without having to do some web scraping hack