[Buildbot-devel] [USER] Variable referring to builddir ?
Amber Yust
ayust at yelp.com
Sat Jan 22 18:29:16 UTC 2011
As for the "static file" bit - just put it somewhere on the buildslave
that's a known path, and then use a ShellCommand to copy/(sym)link it into
the build directory as part of the build. You can use "cp
/path/to/big/foo.iso ./foo.iso" or "install /path/to/big/iso ." to do this.
~Amber
On Sat, Jan 22, 2011 at 3:07 AM, brainstorm <braincode at gmail.com> wrote:
> Thanks Tom !
>
> Yes, the """ ... """ trick is a neat one (taken from HelpfulHints in
> the wiki). But there's a big downside though, I cannot use "workdir"
> in the script itself, as it is interpreted as a mere string "workdir".
> Any suggestions to make this work properly without resorting to the
> unflexible array.split() of the shell command ?
>
> Another issue I'm having is: I have a big iso image file (3GB) which I
> don't want to download every time to buildslaves. Is there a standard
> way in buildbot to declare static resources that should not be deleted
> in the slaves ? Or should I just throw it to "source" directory ?
>
> On Sat, Jan 22, 2011 at 8:12 AM, tom fogal <tfogal at sci.utah.edu> wrote:
> > brainstorm <braincode at gmail.com> writes:
> >> I've been scanning buildbot's documentation but I cannot find a good
> >> way to substitute (and get a working version) of "PREFIX_DIRTY_HACK"
> >> here. I recall reading about a variable such as "workdir" or
> >> "builddir" that pointed to "/var/lib/buildbot/bbot/runtests/build",
> >> but cannot find/use it on the docs now :_/
> >
> > It is 'workdir', and it's part of the parent of ShellCommand or
> > similar. So basically any command you can come up with accepts
> > 'workdir'.
> >
> > (Side note:
> > tf at shigeru docs grep "@item workdir" *
> > cfg-buildfactories.texinfo:@item workdir
> > cfg-buildsteps.texinfo:@item workdir
> > cfg-buildsteps.texinfo:@item workdir
> > cfg-changesources.texinfo:@item workdir
> > tf at shigeru docs pwd
> > /home/tfogal/dev/buildbot/master/docs
> > That is, the docs are in the buildbot tree && very greppable. I've had
> > to do this a few times myself; times like these where I remember the
> > argument but not which class it belongs to. 'BuildStep' is probably
> > the answer here.)
> >
> > It defaults to the location you started the slave from, plus the
> > 'builddir' setting you set in your builders.
> >
> > I would guess your issue is that you have an environment variable that
> > depends on an environment variable:
> >
> > > env={
> > > 'PREFIX_DIRTY_HACK' : '/var/lib/buildbot/bbot/runtests/build'
> > > 'IMAGE': 'efika.dd',
> > > 'PARTED': 'parted',
> > > 'NEW_LOOP': '/dev/loop0',
> > > 'MAPPER': '/dev/mapper/loop0',
> > > 'OLD_IMG': 'maverick-installer.img',
> > > 'OLD_LOOP': '/dev/loop1',
> > > 'OLD_MNT': "$PREFIX_DIRTY_HACK/mnt/old_mnt",
> > > 'NEW_MNT': "$PREFIX_DIRTY_HACK/mnt/new_mnt",
> > > 'PATH': '/bin:/sbin:/usr/bin'
> > > }))
> >
> > I would just avoid setting OLD_MNT and NEW_MNT at all here. Put them
> > as the first few lines of your shell script instead; I bet that'll
> > work.
> >
> >> factory.addStep(ShellCommand(command=['/bin/bash','-ex', '-c', r"""
> >> #!/bin/bash -x
> >>
> >> dd if=/dev/zero of=${IMAGE} bs=1M count=1700
> >
> > i.e. right above this `dd' invocation.
> >
> > Cute trick with the r""" ... """ btw; I hadn't thought of that.
> >
> > HTH,
> >
> > -tom
> >
>
>
> ------------------------------------------------------------------------------
> Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
> Finally, a world-class log management solution at an even better
> price-free!
> Download using promo code Free_Logger_4_Dev2Dev. Offer expires
> February 28th, so secure your free ArcSight Logger TODAY!
> http://p.sf.net/sfu/arcsight-sfd2d
> _______________________________________________
> Buildbot-devel mailing list
> Buildbot-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/buildbot-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20110122/193b3dc3/attachment.html>
More information about the devel
mailing list