[Bioperl-l] Nightly build archives now available

Chris Fields cjfields at uiuc.edu
Fri Mar 7 16:15:31 UTC 2008


On Mar 7, 2008, at 9:43 AM, Sendu Bala wrote:

> Chris Fields wrote:
>> On Mar 7, 2008, at 8:54 AM, Sendu Bala wrote:
>>
>>> Again, you only need to run 'perl Build.PL' once and answer the  
>>> questions only once. Then you can svn update and run the actions  
>>> with no more questions to answer. This isn't a problem that needs  
>>> to be solved. It is /supposed/ to be this way. It's ready to use!  
>>> Please make use of it; it's one of the (many) reasons I moved  
>>> Bioperl over to Build.PL in the first place.
>> Then set it up the way you want.  I give up.
>
> I really don't understand that response. I have merely informed you  
> how Build.PL and the actions work, since you didn't know. I have  
> informed you it already does what you want in terms of automation;  
> there's nothing to wait for, no more work to do. I have requested  
> you use it, since there is little value in duplicating code and  
> effort.
>
> Now that you have the information, you can make an informed choice  
> as to how to proceed, based on your needs. If you have good reasons  
> for sticking with your current nightly build process, by all means  
> stick with them.
>
> Mainly I just wanted to make clear (as a general point for anyone  
> interested) that the questions asked by Build.PL aren't an issue or  
> obstacle in terms of automating builds or tests.

It doesn't come across that way; it comes off as pretty  
condescending.  And please don't assume I lack experience with how  
Module::Build works (I have used 'Build ppmdist' and 'Build testcover'  
quite a few times recently, and the next item on my agenda is to fix  
the various issues with Build.PL and database checking, which you  
already know).

So my response is pretty simple; if you feel the need to use  
'Build.PL' to make nightlies, then by all means set it up.  I find it  
much harder to work with the current Build process in an automated way  
using a bash script, so I work around it.  If it makes you happier we  
can switch the directory over to 'nightly_checkouts', but I think  
that's just mincing semantics.

Okay, it's pretty obvious we're not on the same page here.  I'll go  
through it carefully so you understand the problem:

1)  I am running a 'svn co' on anon. svn for the various distros to a  
temp directory.  This is done using a bash script.  If I attempt to  
change into the distribution directory and run 'perl Build.PL' from  
the bash script, I immediately run into permissions issues and several  
odd things:

Checking prerequisites...
  - ERROR: Bio::Root::Version is not installed
(I think you ran Build.PL directly, so will use CPAN to install  
prerequisites on demand)
CPAN: Storable loaded ok
Going to read /root/.cpan/Metadata
   Database was generated on Tue, 05 Feb 2008 11:30:54 GMT
Warning: You are not allowed to write into directory "/root/.cpan/ 
sources/authors".
     I'll continue, but if you encounter problems, they may be due
     to insufficient permissions.
CPAN: LWP::UserAgent loaded ok
Fetching with LWP:
   ftp://mirror.hiwaay.net/CPAN/authors/01mailrc.txt.gz
LWP failed with code[500] message[Cannot write to '/root/.cpan/sources/ 
authors/01mailrc.txt.gz-8678': Permission denied]
Fetching with Net::FTP:
   ftp://mirror.hiwaay.net/CPAN/authors/01mailrc.txt.gz
Cannot open Local file /root/.cpan/sources/authors/01mailrc.txt.gz:  
Permission denied
....

2) I suspect, even if I worked around permissions and set up the job  
as root or admin and worked out why it can't find  
'Bio::Root::Version' (?!?), this would still be a terrific pain in the  
*** to deal with as the Build.PL process is expecting answers for each  
and every prompt, and the process differs for each distribution.  Yes,  
I could set something up to deal with that on in the script.  No, I  
will not do that as any additions or changes to prompts could break/ 
hang the script or (worse) silently change what the archive contains.   
Hence my indication that passing flags to 'perl Build.PL' would be a  
nice way to work around that.  For that I haven't heard a response, so  
I assume that functionality isn't there (or am I assuming incorrectly?).

So, from where I stand, even if using Build.PL is the /proper/ way to  
do it, it doesn't work as expected using an automated process (i.e.  
cron).  Make sense?

chris





More information about the Bioperl-l mailing list