develooper Front page | perl.daily-build | Postings from August 2010

Fw: smoke-me/* beta

H.Merijn Brand
August 1, 2010 07:48
Fw: smoke-me/* beta
Message ID:

Begin forwarded message:

Date: Mon, 26 Jul 2010 19:18:35 -0400 (EDT)
From: George Greer <>
To: Perl 5 Porters <>
Subject: smoke-me/* beta

I finally got around to writing a wrapper for Test::Smoke that will
look for any smoke-me/* branches in the official perl git repository
and smoke them.  Probably some day Test::Smoke should learn how to do
this itself, but in the meantime, enjoy the smoke signals.

How it works:

- It might not.  If so I'll fix it. :)

- Winner is the oldest most recent commit on a branch that hasn't been 
smoked. (In other words: who has the oldest branch tip?)

- E-mail is sent to and the e-mail address of
  the most recent committer on the branch, whether pass or fail.  I
  also get a Bcc: for QA purposes.  If the committer doesn't have an
  e-mail address... so sorry, but see below.

- Reports are (will be) available at A. Berry/ (for
  example), using the name of the most recent comitter to each branch.
  I considered using the branch name but thought this may be easier for
  bookmarking purposes.  Feel free to evangelize.

- I'd like to have some way of specifying a "smoke set", like 
"smoke-me/dual:fast" gets the "fast" configuration set while 
"smoke-me/dual:g++" gets only a "g++" test set or
  "smoke-me/dual:thorough" gets as many tests as possible.  I haven't
  actually implemented that though.  Currently my smokes will get
  whatever I'm using for blead on my Linux smoker at the time (~18 hour

- Only one 'smoke-me' branch will run at a time.  There is no delay 
between smokes when it is behind but it will sleep for one hour if it
  has nothing yet to do.

- If my desktop's wireless decides to take a nap and my 5-minute cron
  job doesn't kick it back awake fast enough, the smoke-me script will
  probably die from a no-DNS error. I'll restart it whenever I'm 
awake/home/paying-attention in that case.

- Currently, up-to-date is determined by comparing git's remote branch 
head versus my smoker's git repository local tracking branch head. 
Downside is that it has to advance the local head before it can do the 
smoke so dying in the middle may prevent a smoke.  I'll try to whack
  the local branch if I notice this happen.

- My smoke-me script does "git remote prune" before every cycle so if
  you change your mind you may be able to remove the branch before it
  gets smoked.

I'll release the script if there is interest, after I make it use 
Test::Smoke's config hash rather than having a bunch of hard-coded 'my' 
variables at the top.

George Greer

H.Merijn Brand      Perl Monger
using 5.00307 through 5.12 and porting perl5.13.x on HP-UX 10.20, 11.00,
11.11, 11.23, and 11.31, OpenSuSE 10.3, 11.0, and 11.1, AIX 5.2 and 5.3.  Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About