GitLab steht wegen Wartungsarbeiten am Montag, den 10. Mai, zwischen 17:00 und 19:00 Uhr nicht zur Verfügung.

Commit 4bcc0977 authored by Zeger-Jan van de Weg's avatar Zeger-Jan van de Weg

A worker deletes a user, so the request doesn't time out

Fixes #13261
parent bc590ce6
......@@ -178,6 +178,7 @@ v 8.5.0
v 8.4.5
- No CE-specific changes
- User deletion is now done in the background so the request can not time out
v 8.4.4
- Update omniauth-saml gem to 1.4.2
......@@ -122,7 +122,7 @@ def destroy
respond_to do |format|
format.html { redirect_to admin_users_path }
format.html { redirect_to admin_users_path, notice: "The user is being deleted." }
format.json { head :ok }
class DeleteUserWorker
include Sidekiq::Worker
def perform(current_user_id, delete_user_id)
delete_user = User.find(delete_user_id)
current_user = User.find(current_user_id)
require 'spec_helper'
describe DeleteUserWorker do
describe "Deletes a user and all their personal projects" do
let!(:user) { create(:user) }
let!(:current_user) { create(:user) }
let!(:namespace) { create(:namespace, owner: user) }
let!(:project) { create(:project, namespace: namespace) }
before do,
it 'deletes all personal projects' do
expect { Project.find( }.to raise_error(ActiveRecord::RecordNotFound)
it 'deletes the user' do
expect { User.find( }.to raise_error(ActiveRecord::RecordNotFound)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment