summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRubén Dávila <ruben@gitlab.com>2018-07-26 23:12:18 -0500
committerRubén Dávila <ruben@gitlab.com>2018-08-01 10:54:17 -0500
commit9e1dd0719778c90138545745cd23563c49359ce9 (patch)
tree89a9c1d19a23b55247e4ecd2287ef579713f0510
parent5c15800283feec3122f89d93254743ae5f95bb25 (diff)
downloadgitlab-shell-9e1dd0719778c90138545745cd23563c49359ce9.tar.gz
Add support for git_config_options value receive from GitLab endpoint
-rw-r--r--lib/gitlab_access_status.rb8
-rw-r--r--lib/gitlab_shell.rb4
-rw-r--r--spec/gitlab_shell_spec.rb3
3 files changed, 10 insertions, 5 deletions
diff --git a/lib/gitlab_access_status.rb b/lib/gitlab_access_status.rb
index c639462..494865a 100644
--- a/lib/gitlab_access_status.rb
+++ b/lib/gitlab_access_status.rb
@@ -1,15 +1,16 @@
require 'json'
class GitAccessStatus
- attr_reader :message, :gl_repository, :gl_id, :gl_username, :repository_path, :gitaly, :git_protocol
+ attr_reader :message, :gl_repository, :gl_id, :gl_username, :repository_path, :gitaly, :git_protocol, :git_config_options
- def initialize(status, message, gl_repository:, gl_id:, gl_username:, repository_path:, gitaly:, git_protocol:)
+ def initialize(status, message, gl_repository:, gl_id:, gl_username:, repository_path:, gitaly:, git_protocol:, git_config_options: [])
@status = status
@message = message
@gl_repository = gl_repository
@gl_id = gl_id
@gl_username = gl_username
@repository_path = repository_path
+ @git_config_options = git_config_options
@gitaly = gitaly
@git_protocol = git_protocol
end
@@ -23,7 +24,8 @@ class GitAccessStatus
gl_username: values["gl_username"],
repository_path: values["repository_path"],
gitaly: values["gitaly"],
- git_protocol: values["git_protocol"])
+ git_protocol: values["git_protocol"],
+ git_config_options: values["git_config_options"])
end
def allowed?
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
index 78fdfe8..d13d4ba 100644
--- a/lib/gitlab_shell.rb
+++ b/lib/gitlab_shell.rb
@@ -119,6 +119,7 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
self.repo_path = status.repository_path
@gl_repository = status.gl_repository
@git_protocol = ENV['GIT_PROTOCOL']
+ @git_config_options = status.git_config_options
@gitaly = status.gitaly
@username = status.gl_username
if defined?(@who)
@@ -152,7 +153,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
'gl_repository' => @gl_repository,
'gl_id' => @gl_id,
'gl_username' => @username,
- 'git_protocol' => @git_protocol
+ 'git_protocol' => @git_protocol,
+ 'git_config_options' => @git_config_options
}
args = [gitaly_address, JSON.dump(gitaly_request)]
diff --git a/spec/gitlab_shell_spec.rb b/spec/gitlab_shell_spec.rb
index 382cad4..056bc2a 100644
--- a/spec/gitlab_shell_spec.rb
+++ b/spec/gitlab_shell_spec.rb
@@ -158,7 +158,8 @@ describe GitlabShell do
'gl_repository' => gl_repository,
'gl_id' => gl_id,
'gl_username' => gl_username,
- 'git_protocol' => git_protocol
+ 'git_protocol' => git_protocol,
+ 'git_config_options' => []
)
end