diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/action/custom.rb | 4 | ||||
-rw-r--r-- | lib/gitlab_shell.rb | 11 |
2 files changed, 10 insertions, 5 deletions
diff --git a/lib/action/custom.rb b/lib/action/custom.rb index a2f3d59..4efb0a8 100644 --- a/lib/action/custom.rb +++ b/lib/action/custom.rb @@ -1,10 +1,12 @@ require 'base64' require_relative '../http_helper' +require_relative '../console_helper' module Action class Custom include HTTPHelper + include ConsoleHelper class BaseError < StandardError; end class MissingPayloadError < BaseError; end @@ -105,7 +107,7 @@ module Action end def format_gitlab_output(str) - str.split("\n").map { |line| "> GitLab: #{line}" }.join("\n") + format_for_stderr(str.split("\n")).join("\n") end def validate! diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb index 2cb76a8..c615805 100644 --- a/lib/gitlab_shell.rb +++ b/lib/gitlab_shell.rb @@ -6,8 +6,11 @@ require 'pathname' require_relative 'gitlab_net' require_relative 'gitlab_metrics' require_relative 'action' +require_relative 'console_helper' class GitlabShell # rubocop:disable Metrics/ClassLength + include ConsoleHelper + class AccessDeniedError < StandardError; end class DisallowedCommandError < StandardError; end class InvalidRepositoryPathError < StandardError; end @@ -82,18 +85,18 @@ class GitlabShell # rubocop:disable Metrics/ClassLength true rescue GitlabNet::ApiUnreachableError - $stderr.puts "GitLab: Failed to authorize your Git request: internal API unreachable" + write_stderr('Failed to authorize your Git request: internal API unreachable') false rescue AccessDeniedError => ex $logger.warn('Access denied', command: origin_cmd, user: log_username) - $stderr.puts "GitLab: #{ex.message}" + write_stderr(ex.message) false rescue DisallowedCommandError $logger.warn('Denied disallowed command', command: origin_cmd, user: log_username) - $stderr.puts "GitLab: Disallowed command" + write_stderr('Disallowed command') false rescue InvalidRepositoryPathError - $stderr.puts "GitLab: Invalid repository path" + write_stderr('Invalid repository path') false rescue Action::Custom::BaseError => ex $logger.warn('Custom action error', exception: ex.class, message: ex.message, |