Commit 1e6ea914 authored by Stan Hu's avatar Stan Hu

GitHub import: Create new branches as project owner

This avoids permission errors when importing merge requests whose
authors don't have direct access to push to the main repository.
parent 934253c9
Pipeline #52619480 passed with stages
in 78 minutes and 47 seconds
---
title: 'GitHub import: Create new branches as project owner'
merge_request: 26335
author:
type: fixed
......@@ -89,7 +89,7 @@ module Gitlab
return if project.repository.branch_exists?(source_branch)
project.repository.add_branch(merge_request.author, source_branch, pull_request.source_branch_sha)
project.repository.add_branch(project.owner, source_branch, pull_request.source_branch_sha)
rescue Gitlab::Git::CommandError => e
Gitlab::Sentry.track_acceptable_exception(e,
extra: {
......
......@@ -273,6 +273,11 @@ describe Gitlab::GithubImport::Importer::PullRequestImporter, :clean_gitlab_redi
mr.state = 'opened'
mr.save
# Ensure the project owner is creating the branches because the
# merge request author may not have access to push to this
# repository.
allow(project.repository).to receive(:add_branch).with(project.owner, anything, anything).and_call_original
importer.insert_git_data(mr, exists)
expect(project.repository.branch_exists?(mr.source_branch)).to be_truthy
......
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