Handle errors while a project is being deleted asynchronously.
What does this MR do?
- 
Rescue all errors that Projects::DestroyServicemight throw, to prevent the worker from leaving things in an inconsistent state
- 
Unmark the project as pending_delete
- 
Add a delete_errortext column toprojects, and save the error message in there, to be shown to the project masters/owners.
Are there points in the code the reviewer needs to double check?
Are there any actions apart from the ones mentioned above that we might need to take when Projects::DestroyService errors out?
What are the relevant issue numbers?
Closes #29289 (closed)
Tasks
- 
Investigation 
- 
Implementation - 
Errors don't bubble up 
- 
Unmark pending_delete
- 
Don't do any of this if not async 
- 
Display error message on project homepage 
 
- 
- 
Tests - 
Added 
- 
Passing 
 
- 
- 
Meta - 
CHANGELOG entry created 
- 
API support added 
- 
Branch has no merge conflicts with master
- 
Squashed related commits together 
- 
Added screenshots 
- 
Check for clean merge with EE 
- 
Documentation added/updated 
 
- 
- 
Review - 
Reviewer 
- 
Maintainer 
 
- 
- 
Wait for merge 
Edited  by Tiago Botelho