feature request: record build space used
Joe Marcus Clarke
marcus at marcuscom.com
Sun Jul 27 14:34:33 EDT 2008
On Sun, 2008-07-27 at 19:59 +0300, Ion-Mihai Tetcu wrote:
> On Sat, 26 Jul 2008 13:03:57 -0400
> Joe Marcus Clarke <marcus at marcuscom.com> wrote:
>
> > On Sat, 2008-07-26 at 12:37 +0300, Ion-Mihai Tetcu wrote:
>
> [ .. ]
>
> > > Let me try to rephrase it:
> > > What I want to know is how much space is required to build a port
> > > so I can have all that done in memory-backed file system.
> > >
> > > If I'm understanding the way tindy works correctly that space is:
> > > - the untar'ed jail
> > > - the untar'ed dependecies
> > > - the untar'ed sources of the port to be built
> > > - the results of the build process (.o files, binaries, docs, etc.)
> > >
> > > The distfiles and packages are kept outside the build dir (which
> > > looks something like /TINDERBOX_ROOT/BUILD_NAME) so they shouldn't
> > > be counted in the necessary space.
> >
> > But they're not. Everything needed to install a port is copied to the
> > chroot ({pb}/BUILD) during pre-setup. This way, buildscript can
> > install all the dependent packages, build the port, install it, then
> > create the package. So the total space required will be sizeof(jail
> > + dependency tbzs + dependencies installed + port built + port
> > installed + package).
>
> Oh, so the distfiles and and packages are first copied in the chroot? I
> didn't realized that.
>
> > > The way I see it implemented:
> > > - record the space size for the last build if successful.
> > > - record the space size of the last build if unsuccessful and bigger
> > > that the one currently recorded.
> > > - add a ports_fail_pattered to look for 'out of space'
> > > - have the recorded space exported in prePortBuild hook so that one
> > > could use his favorite mount command for /TINDERBOX_ROOT/BUILD_NAME
> >
> > All of this is doable, but we need to come to an understanding of what
> > is counted toward total space. If you agree with what I've said
> > above, then I'll start work today.
>
> [ .. ]
>
> Yes.
>
> > What about the other two requests (for OS info and dependencies)? I
> > asked questions about those as well.
>
> For what I understand from what you wrote above, there's nothing more
> to record but the size of {pb}/BUILD after the package is made.
The dependencies are not stored in the database. You mentioned you
wanted that as well. How do you want them stored? I was thinking of
creating a new port_dependencies table which would link build_port_ids
to port_ids.
Joe
>
>
--
PGP Key : http://www.marcuscom.com/pgp.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
URL: <http://marcuscom.com/pipermail/tinderbox-list/attachments/20080727/4715feaa/attachment.bin>
More information about the tinderbox-list
mailing list