Mailinglist Archive: opensuse-buildservice (148 mails)

< Previous Next >
Re: [opensuse-buildservice] Preinstall: project configuration order
  • From: Michel Bourget <michel@xxxxxxx>
  • Date: Wed, 04 Sep 2013 17:50:23 -0400
  • Message-id: <5227AB1F.10306@sgi.com>
On 08/30/2013 03:11 AM, Adrian Schröter wrote:
Am Donnerstag, 29. August 2013, 19:42:05 schrieb Michel Bourget:
Hi all,

we are noticing build failures because "filesystem" isn't installed 1st.
See buildlog snippet below.
Even when we list "filesystem" in the "Preinstall" section of the repo
project configuration,
it is not installed 1st.

Anyone have an idea how to fix that ?
Via the Order: directive in prjconf. Eg:

Order: filesystem:archive

However, this is only a workaround for missing PreRequire statements in
the packages.


It's not a Prereq ( or similar ) issue. Well, the "Prereq" technique hides the real problem here.
It's the fact Redhat messed up with the Rhel7 filesystem RPM.
You can see https://build.opensuse.org/project/prjconf/Fedora:19 WARed it by doing:

Order: filesystem:vim-filesystem
Order: filesystem:acl
Order: filesystem:attr
Order: filesystem:libgcc
Order: filesystem:setup

Why am I saying RedHat messed up ? It's because rhel7 filesystem RPM does this:

lrwxr-xr-x 1 root root 9 Jul 24 2012 /lib64 ->
usr/lib64
dr-xr-xr-x 2 root root 0 Jul 24 2012 /usr/lib64


while rhel6.4 does:

dr-xr-xr-x 2 root root 0 Jun 28 2011 /lib64
dr-xr-xr-x 2 root root 0 Jun 28 2011 /usr/lib64

So, the upshot is, from an init_buildsystem perspective,
the fact the Preinstall "reorder" putting filesystem 3rd result
( as opposed to 1st , as I attempted to WAR it ) result in a filesystem install failure
in the chroot build since /lib64 was already installed by the previous 2 RPMs as
a result of the "re-order" ./..

Of course, the other consequence is any customer upgrading from
RHel6 to Rhel7 will get an "upgrade" RPM install failure.

So, since we need to get going here, both WARs can be used :
1. comment out the 'reorder' step for Preinstall in init_buildsystem
NOTE: I would argue the 'reorder' phase should not be performed.
In another build system, based on build-2009.02.25, the 'reorder'
phase is not set for PreInstall. So, my question is why is it
it needed ? What caused it to have a 'reorder' for preinstall ?

-or-

2. use the Fedora19 WAR.

I am using option 2. But I'd like to propose to use 1 or variation a variation of it such as
flagging a package as "PreInstallFirst: filesystem" ... Any comments ?


A+

Thanks in advance.

[ 13s] [1/202] installing bind-license-9.9.2-6.P1.el7
[ 13s] [2/202] installing ca-certificates-2012.87-1.el7
[ 13s] [3/202] installing gettext-common-devel-0.18.1.1-17.el7
[ 13s] [4/202] installing hwdata-0.242-1.el7
[ 13s] [5/202] installing kernel-headers-3.10.0-9.el7
[ 14s] [6/202] installing libgcc-4.7.2-8.el7
[ 14s] [7/202] installing ncurses-base-5.9-7.20121017.el7
[ 14s] [8/202] installing setup-2.8.63-1.el7
[ 14s] [9/202] installing tzdata-2012j-1.el7
[ 15s] [10/202] installing vim-filesystem-7.3.712-3.el7
[ 15s] [11/202] installing filesystem-3.1-2.el7
[ 15s] error: unpacking of archive failed on file /lib64: cpio: rename
failed - Is a directory
[ 15s] error: filesystem-3.1-2.el7.x86_64: install failed
[ 15s] exit ...

--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-buildservice+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups