Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <psteinhardt@gitlab.com>2022-03-04 14:50:13 +0300
committerPatrick Steinhardt <psteinhardt@gitlab.com>2022-03-28 09:59:58 +0300
commit5954ca9ab687e8d137e8b67538ba2b5b17edcb9c (patch)
tree6e922b56fe7b5c3b84c5b3d7a06c7f36efab7219
parent57761a33a63a8cda40a137d487db1b4d3dd4acf8 (diff)
support: Adapt test-boot script to support bundled Git
The test-boot script doesn't currently support bundled Git, so it will only be able to bootstrap a server when a Git distribution is available. Adapt the script to also support bundled Git so that we can use it in contexts where it is the only Git execution environment available.
-rwxr-xr-x_support/test-boot29
1 files changed, 22 insertions, 7 deletions
diff --git a/_support/test-boot b/_support/test-boot
index 4a9be6709..67be87553 100755
--- a/_support/test-boot
+++ b/_support/test-boot
@@ -2,14 +2,21 @@
require 'tempfile'
require 'socket'
+require 'optparse'
ADDR = 'socket'.freeze
-def main(gitaly_dir)
- gitaly_dir = File.realpath(gitaly_dir)
+def main(params)
+ gitaly_dir = File.realpath(params[:dir])
build_dir = File.join(gitaly_dir, '_build')
bin_dir = File.join(build_dir, 'bin')
- git_path = File.join(build_dir, 'deps', 'git', 'install', 'bin', 'git')
+
+ git_path, use_bundled_git =
+ if params[:"bundled-git"]
+ ["", true]
+ else
+ [File.join(build_dir, 'deps', 'git', 'install', 'bin', 'git'), false]
+ end
version = IO.popen("#{File.join(bin_dir, 'gitaly')} -version").read.delete_prefix('Gitaly, version ').strip
version_from_file = IO.read(File.join(gitaly_dir, 'VERSION')).strip
@@ -35,6 +42,7 @@ def main(gitaly_dir)
path = "#{dir}"
[git]
+ use_bundled_binaries = #{use_bundled_git}
bin_path = "#{git_path}"
[gitaly-ruby]
@@ -85,8 +93,15 @@ def wait_connect
abort
end
-unless ARGV.count == 1
- abort "Usage: #{$PROGRAM_NAME} GITALY_DIR"
-end
+params = {}
+OptionParser.new do |parser|
+ parser.banner = "Usage: #{$PROGRAM_NAME} [options] <GITALY_DIR>"
+ parser.on('--[no-]bundled-git', 'Set up Gitaly with bundled Git binaries')
+end.parse!(into: params)
+
+params[:dir] = ARGV.pop
+abort "Gitaly source directory not provided" if params[:dir].nil?
+
+abort "Extra arguments" unless ARGV.count == 0
-main(ARGV.first)
+main(params)