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 /_support
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.
Diffstat (limited to '_support')
-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)