Merge branch 'fix/import-error' into 'master'
Fix Import/Export error checking versions Fixes small bug preventing the correct error message about Import/Export version being displayed. Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/20536 - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5638
This commit is contained in:
commit
ae83801cd5
|
|
@ -63,6 +63,9 @@ v 8.11.0 (unreleased)
|
|||
- Catch what warden might throw when profiling requests to re-throw it
|
||||
- Speed up and reduce memory usage of Commit#repo_changes, Repository#expire_avatar_cache and IrkerWorker
|
||||
|
||||
v 8.10.4 (unreleased)
|
||||
- Fix Import/Export error checking versions
|
||||
|
||||
v 8.10.3
|
||||
- Fix Import/Export issue importing milestones and labels not associated properly. !5426
|
||||
- Fix timing problems running imports on production. !5523
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ module Gitlab
|
|||
|
||||
def verify_version!(version)
|
||||
if Gem::Version.new(version) > Gem::Version.new(Gitlab::ImportExport.version)
|
||||
raise Gitlab::ImportExport::Error("Import version mismatch: Required <= #{Gitlab::ImportExport.version} but was #{version}")
|
||||
raise Gitlab::ImportExport::Error.new("Import version mismatch: Required <= #{Gitlab::ImportExport.version} but was #{version}")
|
||||
else
|
||||
true
|
||||
end
|
||||
|
|
|
|||
|
|
@ -0,0 +1,30 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe Gitlab::ImportExport::VersionChecker, services: true do
|
||||
describe 'bundle a project Git repo' do
|
||||
let(:shared) { Gitlab::ImportExport::Shared.new(relative_path: '') }
|
||||
let(:version) { Gitlab::ImportExport.version }
|
||||
|
||||
before do
|
||||
allow(File).to receive(:open).and_return(version)
|
||||
end
|
||||
|
||||
it 'returns true if Import/Export have the same version' do
|
||||
expect(described_class.check!(shared: shared)).to be true
|
||||
end
|
||||
|
||||
context 'newer version' do
|
||||
let(:version) { '900.0'}
|
||||
|
||||
it 'returns false if export version is newer' do
|
||||
expect(described_class.check!(shared: shared)).to be false
|
||||
end
|
||||
|
||||
it 'shows the correct error message' do
|
||||
described_class.check!(shared: shared)
|
||||
|
||||
expect(shared.errors.first).to eq("Import version mismatch: Required <= #{Gitlab::ImportExport.version} but was #{version}")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Reference in New Issue