diff options
author | Ahmad Sherif <me@ahmadsherif.com> | 2021-11-02 16:24:39 +0300 |
---|---|---|
committer | Ahmad Sherif <me@ahmadsherif.com> | 2021-11-02 19:51:28 +0300 |
commit | 989ca13e053371bad530f817c57224c136ddb175 (patch) | |
tree | bba64196437a40bf4b879bdc66fd1925e1b4594f /ruby | |
parent | 3b4c8b2211b024b86e3de99f38350ffd1f907417 (diff) |
Return a proper response on WikiUpdatePage failing on DuplicatePageError
Fixes https://gitlab.com/gitlab-org/gitaly/-/issues/3884
Changelog: fixed
Diffstat (limited to 'ruby')
-rw-r--r-- | ruby/lib/gitaly_server/wiki_service.rb | 2 | ||||
-rw-r--r-- | ruby/lib/gitlab/git/wiki.rb | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/ruby/lib/gitaly_server/wiki_service.rb b/ruby/lib/gitaly_server/wiki_service.rb index 7c586e93f..1df1cba28 100644 --- a/ruby/lib/gitaly_server/wiki_service.rb +++ b/ruby/lib/gitaly_server/wiki_service.rb @@ -107,6 +107,8 @@ module GitalyServer wiki.update_page(page_path, title, format.to_sym, content, commit_details) Gitaly::WikiUpdatePageResponse.new + rescue Gitlab::Git::Wiki::DuplicatePageError => e + Gitaly::WikiUpdatePageResponse.new(error: e.message.b) end private diff --git a/ruby/lib/gitlab/git/wiki.rb b/ruby/lib/gitlab/git/wiki.rb index 506b4489f..b7779b6c0 100644 --- a/ruby/lib/gitlab/git/wiki.rb +++ b/ruby/lib/gitlab/git/wiki.rb @@ -152,6 +152,8 @@ module Gitlab gollum_wiki.update_page(page, page.name, format, content, committer: committer) gollum_wiki.rename_page(page, title, committer: committer) end + rescue Gollum::DuplicatePageError => e + raise Gitlab::Git::Wiki::DuplicatePageError, e.message end def gollum_find_page(title:, version: nil, dir: nil) |