"Rerun Prebuild" button does not actually re-run failed prebuild
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13.8k
- Forks
- 1.4k
- Avg merge
- 17h 58m
- Merged PRs (30d)
- 5
Description
Bug description
A Gitpod customer reports the following:
- Prebuilds are enabled for all branches on a project
- A new commit
1234was pushed tobranch-a - A new prebuild
abcdwas triggered for commit1234onbranch-a, but eventually the prebuild failed - However, clicking on the button
Rerun Prebuild (branch-a)does not actually re-run the prebuild -- instead, it redirects to the list of prebuilds
Investigating a bit further, we see that:
- The prebuild
abcdappears inFailedstate, with the errorThe tasks executed in the prebuild returned a non-zero exit code. headless task failed: exit status 255 - The prebuild
abcdalso does not show any logs (maybe another, unrelated bug?) - When receiving the request
triggerPrebuild(with commit ID1234and branchbranch-a), Gitpod's server responds immediately with:
{
result: {
done: true,
prebuildId: "abcd",
wsid: "org-project-123"
}
}
I guess Gitpod considers that commit 1234 already has a successful prebuild, which does not need to be rebuilt, even though prebuild abcd is actually Failed?
Steps to reproduce
- Have prebuilds enabled for all branches in a project
- Have a "Failed" prebuild for the latest commit of a given branch
- Click on "Rerun Prebuild (branch-a)" in the bottom bar of the failed prebuild view
Workspace affected
No response
Expected behavior
Expected: Gitpod triggers a new prebuild for the branch, and then shows you its live logs and status
Actual: Gitpod redirects to the list of prebuilds, just as if the latest prebuild had been successful
Example repository
No response
Anything else?
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the Rerun Prebuild action from the failed prebuild view and the triggerPrebuild request, then inspect how failed prebuilds are handled. Done means clicking the button creates a new prebuild for the branch and displays its live logs and status instead of redirecting to the prebuild list.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- cloud, devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100