|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v7 1/2] OSSTEST: introduce a raisin build test
Ian Campbell writes ("Re: [PATCH v7 1/2] OSSTEST: introduce a raisin build
test"):
> Unfortunately ts-xen-build-prep will not have access to the repo, since
> it won't be cloned. Also when reusing a host (which happens for builds)
> I think this step is skipped (Ian J: can you confirm or deny that?)
Indeed. It is ts-xen-build-prep which marks a shared build host as
`ready', when it is done. Near the top of ts-xen-build-prep (and
ts-host-install) you can see
exit 0 if $ho->{SharedReady};
> I think there are two problems, one is that install-builddep will take
> the apt/dpkg lock, which will be shared by any other invocations --
> making the timeout hard to decide upon (since it will pipeline things).
Worse, unless we took special measures (like target_install_packages
does) we would be relying on the underlying apt/dpkg lock, which apt
and dpkg try to lock in a non-waiting mode: that is, if the lock is
already held they simply fail.
> Second if install-builddep did install something extra due to some
> change in raisin.git, for example, then some jobs would see new build
> deps arrive half way through, or subsequent tests of older branches
> might see something installed which wouldn't have been before.
Indeed, that would be bad.
> Is there a check-builddep? That's the thing I would suggest we run here,
> so we get an explicit failure.
That would be best.
> > Otherwise is there a way to guarantee that only one raisin build happen
> > simultaneously?
>
> Ian?
It would be possible to completely avoid sharing the build host. That
would be quite wasteful - particularly as the raisin build is likely
to be able to otherwise share not just the effort of installing the
host, but also a ccache.
> > Given that the series is already at v7, I would prefer to remove the
> > call to install-builddep, even though I think it is important, rather
> > than make substantial modifications. However, if I do remove the call to
> > install-builddep from ts-raisin-build, I would have to install any
> > missing build dependencies somewhere else. Where would that be? In
> > ts-xen-build-prep? Is that script even called for non-xen build jobs?
>
> In ts-xen-build-prep, I think.
ts-xen-build-prep is slightly misnamed. It is run for all build
jobs. (Or, relied on as having been run, for a shared host.)
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |