Mailinglist Archive: opensuse-buildservice (170 mails)

< Previous Next >
Re: [opensuse-buildservice] different packages installed in local build chroot than in OBS build
On 7 March 2012 11:36, Adrian Schröter <adrian suse.de> wrote:
Check with eg:

osc api /build/openSUSE:Tools/openSUSE_Factory/_buildconfig

what your configured build config is. There are also comments from which
project they exactly come from.

Thanks for your reply.

Well, this api call returns exactly what "osc build" stores into the
local .osc/_buildconfig... file, which I have already looked at.

There are also comments from which project they exactly come from.

Yes, I had already seen them and it looked all correct to me.

But the issue is still the project configuration contains
conditional code like the mentioned

%if %speedbash
Preinstall: bash-x86-arm ncurses-libs-x86-arm
Runscripts: bash-x86-arm
%endif


(This part comes from the "root" project, which I "inherit" from. I guess it
should not matter where it comes from besides that "trial and error
testing" is even more limited, because I cannot directly edit these parts.)

As I wrote before the OBS worker seems to evaluate the condition to true
(at least it installs these Preinstalls) and my local build seems to
evaluate the same condition to false (it does not install those).

If I run "osc -d build" I can see the steps. I guess the evaluation happens
somewhere between the messages

Getting buildconfig from server and store to
/home/geuder/projects/xyz/nvc/bini/home:uwe.geuder:test1/test-release/.osc/_buildconfig-release-1-2-armv7el
GET
https://api.foo.nomovok.info/build/home:uwe.geuder:test1/release-1-2/_buildconfig

and

Updating cache of required packages

Looks like I have to dig deeper what happens between these 2 messages
(didn't have time to do so yesterday). I guess somehow there must be a
macro expansion step if this buildconfig info is at all locally used to
determine which packages to preinstall.

However, the "is at all used" seems to be a very big "IF" to me. Somehow
I have difficulties to see why "osc build" would at all use buildconfig
data to determine what packages are needed.

After all it has already fetched the buildinfo

Getting buildinfo from server and store to
/home/geuder/projects/xyz/nvc/bini/home:uwe.geuder:test1/meego-release/.osc/_buildinfo-release-1-2-armv7el.xml
POST
https://api.foo.nomovok.info/build/home:uwe.geuder:test1/release-1-2/armv7el/meego-release/_buildinfo

which seems to contain a list of what to install and even a flag
for each package whether it's a preinstall or not. So I could guess the
macro expansion in the buildconfig has already happened in the OBS
(scheduler?) and there is little I could do locally anymore (both
debugging and influencing the outcome).

Or do packages inferred from buildconfig add up to the list contained in
buildinfo?


Regards,

Uwe Geuder
Nomovok Ltd.
Tampere, Finland
uwe.gxuder@xxxxxxxxxxx (bot check: humans correct 1 obvious spelling error)
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-buildservice+owner@xxxxxxxxxxxx

< Previous Next >