From 8e6af8c59ff1d22bc32e3d2ef44da5399bc23727 Mon Sep 17 00:00:00 2001 From: George Koltsov Date: Wed, 17 Jul 2019 11:16:37 +0100 Subject: Add better error message MembersMapper#ensure_default_member! More details in: https://gitlab.com/gitlab-org/gitlab-ce/issues/64377 --- lib/gitlab/import_export/members_mapper.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/gitlab/import_export/members_mapper.rb b/lib/gitlab/import_export/members_mapper.rb index a154de5419e..d0e30b246ef 100644 --- a/lib/gitlab/import_export/members_mapper.rb +++ b/lib/gitlab/import_export/members_mapper.rb @@ -50,6 +50,8 @@ module Gitlab @project.project_members.destroy_all # rubocop: disable DestroyAll ProjectMember.create!(user: @user, access_level: ProjectMember::MAINTAINER, source_id: @project.id, importing: true) + rescue => e + raise e, ['Error adding importer user to project members', e.message].join('. ') end def add_team_member(member, existing_user = nil) -- cgit v1.2.1 From 0bd54eb43626c008a36958e42019f0dfea794dde Mon Sep 17 00:00:00 2001 From: George Koltsov Date: Wed, 17 Jul 2019 12:16:54 +0100 Subject: Add MembersMapper#ensure_default_user! spec --- spec/lib/gitlab/import_export/members_mapper_spec.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/spec/lib/gitlab/import_export/members_mapper_spec.rb b/spec/lib/gitlab/import_export/members_mapper_spec.rb index b95b5dfe791..a9e8431acba 100644 --- a/spec/lib/gitlab/import_export/members_mapper_spec.rb +++ b/spec/lib/gitlab/import_export/members_mapper_spec.rb @@ -154,5 +154,15 @@ describe Gitlab::ImportExport::MembersMapper do expect(members_mapper.map[exported_user_id]).to eq(user2.id) end end + + context 'when importer mapping fails' do + let(:exception_message) { 'Something went wrong' } + + it 'includes importer specific error message' do + expect(ProjectMember).to receive(:create!).and_raise(StandardError.new(exception_message)) + + expect { members_mapper.map }.to raise_error(StandardError, "Error adding importer user to project members. #{exception_message}") + end + end end end -- cgit v1.2.1 From 3463c24d409eaa4268be034253f51faaced2952e Mon Sep 17 00:00:00 2001 From: George Koltsov Date: Wed, 17 Jul 2019 12:24:36 +0100 Subject: Add changelog entry --- .../georgekoltsov-64377-add-better-log-msg-to-members-mapper.yml | 6 ++++++ lib/gitlab/import_export/members_mapper.rb | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 changelogs/unreleased/georgekoltsov-64377-add-better-log-msg-to-members-mapper.yml diff --git a/changelogs/unreleased/georgekoltsov-64377-add-better-log-msg-to-members-mapper.yml b/changelogs/unreleased/georgekoltsov-64377-add-better-log-msg-to-members-mapper.yml new file mode 100644 index 00000000000..9557e633f76 --- /dev/null +++ b/changelogs/unreleased/georgekoltsov-64377-add-better-log-msg-to-members-mapper.yml @@ -0,0 +1,6 @@ +--- +title: When GitLab import fails during importer user mapping step, add an explicit + error message mentioning importer +merge_request: 30838 +author: +type: other diff --git a/lib/gitlab/import_export/members_mapper.rb b/lib/gitlab/import_export/members_mapper.rb index d0e30b246ef..ab19a509310 100644 --- a/lib/gitlab/import_export/members_mapper.rb +++ b/lib/gitlab/import_export/members_mapper.rb @@ -51,7 +51,7 @@ module Gitlab ProjectMember.create!(user: @user, access_level: ProjectMember::MAINTAINER, source_id: @project.id, importing: true) rescue => e - raise e, ['Error adding importer user to project members', e.message].join('. ') + raise e, "Error adding importer user to project members. #{e.message}" end def add_team_member(member, existing_user = nil) -- cgit v1.2.1