CPAN::Reporter - CPAN-Tester werden ist ganz einfach

Veröffentlicht von Thomas Fahle am (Permalink)

Achtung: Es gibt eine neueren Artikel für die Version 2.0 des CPAN Testers Project: CPAN Tester 2.0 - CPAN Tester werden ist ganz einfach

 

 

 


 

 

 

Das CPAN Testers Project möchte möglichst viele CPAN-Module auf möglichst vielen Plattformen testen. Diese Testergebnisse bieten CPAN-Autoren und Nutzern wertvolles Feedback und helfen die Qualität der CPAN-Module zu verbessern und somit den Wert des CPAN zu erhöhen.

Dank des CPAN-Moduls CPAN::Reporter von David Golden kann jeder, der ein Modul auf seinem Rechner installiert, einen Test-Report automatisch erzeugen und zu den CPAN-Testern übermitteln.

Installation und grundlegende Konfiguration

$ cpan
cpan> install CPAN::Reporter
cpan> reload cpan
cpan> o conf init test_report
 
Email test reports if CPAN::Reporter is installed (yes/no)? yes
email_from? ["Your Name" <your_email@example.com>] 
cc_author? [default:yes pass:no] no
edit_report? [default:ask/no pass:no] 
send_report? [default:ask/yes pass:yes na:no] 
smtp_server?

cpan> o conf test_report  1

cpan> o conf commit

Aus diesen Angaben wird eine Konfigurationsdatei config.ini im Unterverzeichnis .cpanreporter im Heimatverzeichnis des aktuellen Benutzers angelegt.

Da die Testergebnisse per E-Mail verschickt werden, funktioniert diese Konfiguration nur dann, wenn man über einen Mail-Server mit gültigem MX-Record verfügt. (Bei Servern, die direkt ans Internet angebunden sind, ist das meist kein Problem.) Ansonsten wird die Testmail als Spam zurückgewiesen.

Konfiguration Versand über ISP

Wer die Testergebnisse über einen ISP versenden möchte, der SMTP-Auth in Verbindung mit STARTTLS verwendet, installiert zunächst das CPAN-Modul Net::SMTP::TLS und passt die Konfigurationsdatei config.ini von Hand an.

Beispiel für den Versand via Strato AG:

edit_report=default:ask/no pass/na:no
email_from="Thomas Fahle" <cpan@thomas-fahle.de>
send_report=default:ask/yes pass/na:yes
transport=Net::SMTP::TLS User cpan@thomas-fahle.de Password geheym Port 587
smtp_server=smtp.strato.de
cc_author=no

Da in dieser Datei das Passwort im Klartext steht, sollte man zu mindestens die Rechte für den Zugriff auf die Datei und auf das Verzeichnis .cpanreporter einschränken, z.B. chmod 600 config.ini.

Testberichte zeitverzögert senden

Da die Übermittlung eines Testberichts meist zwischen drei und fünf Sekunden benötigt, bietet sich bei größeren Installationen an, die Reports zwischen zu speichern und erst später zu senden. Dazu dient die Option transport=File.

Beispiel:

edit_report=default:ask/no pass/na:no
email_from="Thomas Fahle" <cpan@thomas-fahle.de>
send_report=default:ask/yes pass/na:yes
cc_author=no
transport=File /home/tf/.cpanreporter/reports

Nun werden die Reports im Ordner .cpanreporter/reports/, den man von Hand anlegen muss, zwischengespeichert.

Die gespeicherten Berichte lassen sich mit dem Programm x-perl-send-test-reports (Download) von Pedro Melo sehr einfach versenden:

$ perl x-perl-send-test-reports.pl \
--from '"Thomas Fahle" <cpan@thomas-fahle.de>' \
--transport "Net::SMTP::TLS User cpan@thomas-fahle.de  Password geheym Port 587" \
--clean \
--server smtp.strato.de \
/home/tf/.cpanreporter/report

Siehe auch

"A person who never made a mistake never tried anything new."
Albert Einstein:

Weitere Posts