/usr/bin/cqa-rb is in collab-qa-tools 0.2.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #!/usr/bin/ruby
require 'collab-qa'
DATE=ENV['DATE']
# guess the log filename
file = ARGV[0]
if not File::exists?(file)
lst = Dir::glob("#{file}*log")
if lst.length == 0
puts "No matching logfile."
exit 1
elsif lst.length > 1
lst2 = lst.join("\n ")
puts "Several matching logfiles:\n #{lst2}"
exit 1
else
file = lst[0]
end
end
log = CollabQA::Log::new(file)
log.extract_log
puts "--------- Error:"
puts log.extract
puts "----------------"
# check bugs
if not File::exists?(".bugs.#{log.package}")
puts "NO BUGS FILE"
STDIN.getc
else
s = IO::read(".bugs.#{log.package}")
if s.length > 0
puts "BUGS:"
puts s
STDIN.getc
end
end
versions = `apt-cache showsrc #{log.package} |grep "^Version:" | awk '{print $2}'`.split
versions.each do |v|
if `dpkg --compare-versions #{v} gt #{log.version} ; echo $?`.to_i == 0
puts "There's a newer version available: #{v} (vs: #{log.version})."
STDIN.getc
end
end
File::open(".mail.#{log.package}", "w") do |f|
f.puts log.to_mail(DATE, ENV['DEBFULLNAME'], ENV['DEBEMAIL'], ENV['BUGTYPE'])
end
cmd = "/usr/bin/mutt -e 'set autoedit' -H .mail.#{log.package}"
system(cmd)
if ENV['TODOFILE']
puts "edit TODOFILE?"
STDIN.getc
todo = IO::read(ENV['TODOFILE'])
todo.gsub!(/^#{log.package} (.*) TODO.*$/, "#{log.package} \\1 NNN")
File::open(ENV['TODOFILE'], "w") do |f|
f.print todo
end
end
|