Resolve "Deleting of a GitLab Pages project results in "`PagesWorker.perform_in` cannot be called inside a transaction""

Nick Thomas requested to merge (removed):35072-fix-pages-delete into master

What does this MR do?

Wraps the after_destroy :remove_pages call in a run_after_commit block to avoid a runtime error.

Also reworks the handling of remove_pages for namespaceless projects

Are there points in the code the reviewer needs to double check?

We don't put the run_after_commit block inside remove_pages because the method is also called directly from the PagesController

Why was this MR needed?

Fix a runtime exception

Screenshots (if relevant)

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes #35072 (closed)

Edited by Nick Thomas

Merge request reports