summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAsh McKenzie <amckenzie@gitlab.com>2019-10-09 02:20:36 +0000
committerAsh McKenzie <amckenzie@gitlab.com>2019-10-09 02:20:36 +0000
commite28f75c8d439812f61c4cf0c0291380df4d17106 (patch)
tree5e4ae582eb3aa506c57f954d2a1483fe5e003a2b
parent1ee64eeaea71210e89040438489edac4701a1854 (diff)
parent1a3e687f772047988b9bcaeb471d94d6f49a853e (diff)
downloadgitlab-shell-e28f75c8d439812f61c4cf0c0291380df4d17106.tar.gz
Merge branch '173-remove-bin-install-command' into 'master'
Decouple `bin/compile` and `bin/install` from code in `lib/` See merge request gitlab-org/gitlab-shell!340
-rwxr-xr-xbin/install8
-rw-r--r--support/gitlab_config.rb13
-rw-r--r--support/go_build.rb4
3 files changed, 18 insertions, 7 deletions
diff --git a/bin/install b/bin/install
index e9c1654..d6e5357 100755
--- a/bin/install
+++ b/bin/install
@@ -1,10 +1,8 @@
#!/usr/bin/env ruby
-require_relative '../lib/gitlab_init'
-
-#
-# GitLab shell, invoked from ~/.ssh/authorized_keys
-#
+# Load ROOT_PATH and access the minimum necessary config file
+require_relative '../support/go_build'
+require_relative '../support/gitlab_config'
config = GitlabConfig.new
key_dir = File.dirname("#{config.auth_file}")
diff --git a/support/gitlab_config.rb b/support/gitlab_config.rb
new file mode 100644
index 0000000..1416488
--- /dev/null
+++ b/support/gitlab_config.rb
@@ -0,0 +1,13 @@
+require 'yaml'
+
+class GitlabConfig
+ attr_reader :config
+
+ def initialize
+ @config = YAML.load_file(File.join(ROOT_PATH, 'config.yml'))
+ end
+
+ def auth_file
+ @config['auth_file'] ||= File.join(Dir.home, '.ssh/authorized_keys')
+ end
+end
diff --git a/support/go_build.rb b/support/go_build.rb
index 42e207a..6f4c92b 100644
--- a/support/go_build.rb
+++ b/support/go_build.rb
@@ -2,8 +2,8 @@
require 'fileutils'
-# This will set the ROOT_PATH variable
-require_relative '../lib/gitlab_init'
+# Determine the root of the gitlab-shell directory
+ROOT_PATH = ENV.fetch('GITLAB_SHELL_DIR', File.expand_path('..', __dir__))
module GoBuild
GO_DIR = File.join(ROOT_PATH, 'go')