26 lines
		
	
	
		
			707 B
		
	
	
	
		
			Ruby
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			707 B
		
	
	
	
		
			Ruby
		
	
	
		
			Executable File
		
	
	
#!/usr/bin/env ruby
 | 
						|
 | 
						|
ALLOWED = [
 | 
						|
  # Needed to handle repositories that are not in any storage
 | 
						|
  'lib/gitlab/bare_repository_import/repository.rb',
 | 
						|
 | 
						|
  # Needed to avoid using the git binary to validate a branch name
 | 
						|
  'lib/gitlab/git_ref_validator.rb'
 | 
						|
].freeze
 | 
						|
 | 
						|
rugged_lines = IO.popen(%w[git grep -i -n rugged -- app config lib], &:read).lines
 | 
						|
rugged_lines = rugged_lines.select { |l| /^[^:]*\.rb:/ =~ l }
 | 
						|
rugged_lines = rugged_lines.reject { |l| l.start_with?(*ALLOWED) }
 | 
						|
rugged_lines = rugged_lines.reject do |line|
 | 
						|
  code, _comment = line.split('# ', 2)
 | 
						|
  code !~ /rugged/i
 | 
						|
end
 | 
						|
 | 
						|
exit if rugged_lines.empty?
 | 
						|
 | 
						|
puts "Using Rugged is only allowed in test and #{ALLOWED}\n\n"
 | 
						|
 | 
						|
puts rugged_lines
 | 
						|
 | 
						|
exit(false)
 |