diff options
author | Robert Speicher <robert@gitlab.com> | 2016-05-04 22:03:18 +0000 |
---|---|---|
committer | Robert Speicher <robert@gitlab.com> | 2016-05-04 22:03:18 +0000 |
commit | 915a4193b433575a63fd4f5048b341d417b06426 (patch) | |
tree | d375fb99938284e025c97535a5de5ccaa1c03273 | |
parent | 950ab1e8470011bda4a2c481fc73e12df391dddf (diff) | |
parent | 75523d1df91cc871847a00cad4e5e1d44278a647 (diff) | |
download | gitlab-ce-915a4193b433575a63fd4f5048b341d417b06426.tar.gz |
Merge branch 'sanitize-new-project-error-message' into 'master'
Sanitize repo paths in new project error message
Closes #17243
See merge request !4029
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | app/helpers/projects_helper.rb | 6 | ||||
-rw-r--r-- | app/views/projects/imports/new.html.haml | 2 | ||||
-rw-r--r-- | spec/helpers/projects_helper_spec.rb | 9 |
4 files changed, 17 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG index 925740e5d98..0e6e2505ec6 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -3,6 +3,7 @@ Please view this file on the master branch, on stable branches it's out of date. v 8.8.0 (unreleased) - Project#open_branches has been cleaned up and no longer loads entire records into memory. - Make build status canceled if any of the jobs was canceled and none failed + - Sanitize repo paths in new project error message - Remove future dates from contribution calendar graph. - Support e-mail notifications for comments on project snippets - Use ActionDispatch Remote IP for Akismet checking diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb index 3d5e61d2c18..3720b0085e5 100644 --- a/app/helpers/projects_helper.rb +++ b/app/helpers/projects_helper.rb @@ -341,4 +341,10 @@ module ProjectsHelper ) end end + + def sanitize_repo_path(message) + return '' unless message.present? + + message.strip.gsub(Gitlab.config.gitlab_shell.repos_path.chomp('/'), "[REPOS PATH]") + end end diff --git a/app/views/projects/imports/new.html.haml b/app/views/projects/imports/new.html.haml index 6027fb23360..a8a8caf7280 100644 --- a/app/views/projects/imports/new.html.haml +++ b/app/views/projects/imports/new.html.haml @@ -10,7 +10,7 @@ .panel-body %pre :preserve - #{@project.import_error.try(:strip)} + #{sanitize_repo_path(@project.import_error)} = form_for @project, url: namespace_project_import_path(@project.namespace, @project), method: :post, html: { class: 'form-horizontal' } do |f| = render "shared/import_form", f: f diff --git a/spec/helpers/projects_helper_spec.rb b/spec/helpers/projects_helper_spec.rb index 62389188d2c..29bcb8c5892 100644 --- a/spec/helpers/projects_helper_spec.rb +++ b/spec/helpers/projects_helper_spec.rb @@ -131,4 +131,13 @@ describe ProjectsHelper do end end end + + describe '#sanitized_import_error' do + it 'removes the repo path' do + repo = File.join(Gitlab.config.gitlab_shell.repos_path, '/namespace/test.git') + import_error = "Could not clone #{repo}\n" + + expect(sanitize_repo_path(import_error)).to eq('Could not clone [REPOS PATH]/namespace/test.git') + end + end end |