Skip to content

Handle errors while a project is being deleted asynchronously.

What does this MR do?

  1. Rescue all errors that Projects::DestroyService might throw, to prevent the worker from leaving things in an inconsistent state

  2. Unmark the project as pending_delete

  3. Add a delete_error text column to projects, 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 username-removed-117638

Merge request reports