NAME

Test::Smoke::Database - Add / parse /display perl reports smoke database

SYNOPSIS

 $ admin_smokedb --create --suck --import --update_archi
 $ lynx http://localhost/cgi-bin/smokedb.cgi

DESCRIPTION

This module help to build an application that parses smoke-reports for perl-current and puts the results in a database. This allows for a simple overview of the build status on as wide a variety of supported platforms (operating system/architecture) as possible.

This distribution come with 2 perl scripts:

admin_smokedb

Fetch / Import smoke report in a mysql database. See admin_smokedb

smokedb.cgi

A www interface to browse this smoke database

SEE ALSO

admin_smokedb, Test::Smoke::Database::FAQ, Test::Smoke, http://www.alianwebserver.com/perl/smoke/smoke_db.cgi

METHODS

new hash reference

Construct a new Test::Smoke::Database object and return it. This call too connect method of DBD::Mysql and store dbh in $self->{DBH} except if key no_dbconnect is found in hash reference. Disconnect method is auto called with DESTROY call.

rundb SQL request

This will do like $dbh->do, but several request can be put in SQL request, separated by ';'

Method for cgi

nb

Return the number of reports found after limit.

header_html

Return the HTML menubar that will be displayed in the CGI

filter

Return the HTML filter screen.

display

Return the main HTML screen with summary

distinct col of mysql table 'smoke'

Actions for admin_smokedb

See admin_smokedb

parse_import

As his name say, this method will parse and import fetched report found in $self->{opts}->{dir} and put them in database.

suck_ng

Fetch new report from perl.daily-build.reports

Private methods

read_all
compl_url
parse_rpt file

This method is call by parse_import. Parse file and return values parsed in a reference of hash. Else return -1 for a H.M. Brand report (then parse_hm_brand_rpt will be called), -2 for a bad report, ie a report without os/osver (this report will be deleted), -3 for an Alian multi-col report (deleted too).

parse_hm_brand_rpt file

Do a specific parsing for H.M Brand report file. (his report is multi-col). Return a list of reference of report to use with add_db.

rename_rpt

Rename fetched report to add no of smoke in name of file. For all reports found, this will append at end of name the number of smoke. After that all *. and *.rpt file will be deleted. This method is auto. called after fetch method.

VERSION

$Revision: 1.6 $

AUTHOR

Alain BARBET with some help from Abe Timmerman