1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
#!/usr/bin/env ruby
$:.unshift File.expand_path('../lib', __FILE__)
require 'gitlab_init'
require 'gitlab_net'
#
# GitLab shell check task
#
print "Check GitLab API access: "
begin
resp = GitlabNet.new.check
if resp.code != "200"
abort "FAILED. code: #{resp.code}"
end
puts 'OK'
check_values = JSON.parse(resp.body)
print 'Redis available via internal API: '
if check_values['redis']
puts 'OK'
else
abort 'FAILED'
end
rescue GitlabNet::ApiUnreachableError
abort "FAILED: Failed to connect to internal API"
end
config = GitlabConfig.new
abort("ERROR: missing option in config.yml") unless config.auth_file
print "\nAccess to #{config.auth_file}: "
if system(File.dirname(__FILE__) + '/gitlab-keys', 'check-permissions')
print 'OK'
else
abort "FAILED"
end
puts "\n"
|