diff options
author | Rémy Coutable <remy@rymai.me> | 2017-03-16 18:22:14 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2017-03-16 18:22:14 +0000 |
commit | ac8beca42399fd36b471c63ea1dfe8ad0e48ed8f (patch) | |
tree | a2871c27b1113e2678b394a38c5ca1a7817f843c | |
parent | 2668cc2029d0d337fc9f999dde7416d14d6cbec2 (diff) | |
parent | 45976540799e34fa07e7830ed52a7d6616cde3d7 (diff) | |
download | gitlab-ce-ac8beca42399fd36b471c63ea1dfe8ad0e48ed8f.tar.gz |
Merge branch '29565-name-of-the-uncompressed-folder-of-a-tag-archive-changed' into 'master'
Fix archive prefix bug for refs containing dots
Closes #29565
See merge request !10007
-rw-r--r-- | changelogs/unreleased/29565-name-of-the-uncompressed-folder-of-a-tag-archive-changed.yml | 4 | ||||
-rw-r--r-- | lib/gitlab/git/repository.rb | 2 | ||||
-rw-r--r-- | spec/lib/gitlab/git/repository_spec.rb | 6 |
3 files changed, 11 insertions, 1 deletions
diff --git a/changelogs/unreleased/29565-name-of-the-uncompressed-folder-of-a-tag-archive-changed.yml b/changelogs/unreleased/29565-name-of-the-uncompressed-folder-of-a-tag-archive-changed.yml new file mode 100644 index 00000000000..d0a04b0a130 --- /dev/null +++ b/changelogs/unreleased/29565-name-of-the-uncompressed-folder-of-a-tag-archive-changed.yml @@ -0,0 +1,4 @@ +--- +title: Fix archive prefix bug for refs containing dots +merge_request: +author: diff --git a/lib/gitlab/git/repository.rb b/lib/gitlab/git/repository.rb index 228ef7bb7a9..2187dd70ff4 100644 --- a/lib/gitlab/git/repository.rb +++ b/lib/gitlab/git/repository.rb @@ -201,7 +201,7 @@ module Gitlab def archive_prefix(ref, sha) project_name = self.name.chomp('.git') - "#{project_name}-#{ref.parameterize}-#{sha}" + "#{project_name}-#{ref.tr('/', '-')}-#{sha}" end def archive_metadata(ref, storage_path, format = "tar.gz") diff --git a/spec/lib/gitlab/git/repository_spec.rb b/spec/lib/gitlab/git/repository_spec.rb index 9c3a4571ce4..9ed43da1116 100644 --- a/spec/lib/gitlab/git/repository_spec.rb +++ b/spec/lib/gitlab/git/repository_spec.rb @@ -90,6 +90,12 @@ describe Gitlab::Git::Repository, seed_helper: true do expect(prefix).to eq("#{project_name}-test-branch-SHA") end + + it 'returns correct string for a ref containing dots' do + prefix = repository.archive_prefix('test.branch', 'SHA') + + expect(prefix).to eq("#{project_name}-test.branch-SHA") + end end describe '#archive' do |