Backporting shibboleth-sp2 to wheezy

Ferenc Wágner wferi at niif.hu
Thu Jul 20 09:34:41 UTC 2017


Etienne Dysli-Metref <etienne.dysli-metref at switch.ch> writes:

> On 19/07/17 14:20, Ferenc Wágner wrote:

> piuparts(1) describes the failing test this way:
>> 2. A simple install-upgrade-purge test within one Debian 
>> distribution. This test is like the install-purge test, but install 
>> the packages first via apt-get and then from the package files given 
>> on the command line.
> From what I understand/see piuparts takes the names of the tested
> packages and tries to install that with apt-get, then upgrades with the
> tested packages. The last (failing) command that piuparts runs is:
>
>     apt-get -y -t wheezy-backports-sloppy install \
>     libapache2-mod-shib2 libshibsp-plugins libshibsp-dev \
>     libshibsp-doc shibboleth-sp2-common shibboleth-sp2-schemas \
>     shibboleth-sp2-utils

Does piuparts create its own wheezy-backports-sloppy repo?  By the above
command, it seems to expect to find the 2.6 Shibboleth packages there,
but they aren't present in the official ones.  Besides, libshibsp7 is
missing from the list.  Maybe because wheezy has libshibsp6...  But
without libshibsp7 you can't upgrade libapache2-mod-shib2, resulting in
this situation (I think I found the real reason, see later):

>     Reading package lists...
>     Building dependency tree...
>     Reading state information...
>     Some packages could not be installed. This may mean that you have
>     requested an impossible situation or if you are using the unstable
>     distribution that some required packages have not yet been created
>     or been moved out of Incoming.
>     The following information may help to resolve the situation:
>
>     The following packages have unmet dependencies:
>      libshibsp-plugins : Breaks: libapache2-mod-shib2 (< 2.5.3+dfsg) but 2.4.3+dfsg-5+deb7u1 is to be installed
>      shibboleth-sp2-common : Breaks: libapache2-mod-shib2 (< 2.5.3+dfsg) but 2.4.3+dfsg-5+deb7u1 is to be installed
>                            Breaks: shibboleth-sp2-schemas (< 2.5.3+dfsg) but 2.4.3+dfsg-5+deb7u1 is to be installed
>      shibboleth-sp2-utils : Breaks: libapache2-mod-shib2 (< 2.5.3+dfsg) but 2.4.3+dfsg-5+deb7u1 is to be installed
>     E: Unable to correct problems, you have held broken packages.

As above: apt doesn't seem to find the 2.6 packages.  Which is expected,
they should be installed from files by dpkg, not from the sloppy repo.
(I guess those "held broken packages" are the ones on the command line.)

> The weird thing is that I *can* smoothly upgrade from 2.4.3 to 2.6.0
> with those packages. I just tried it in a Docker container. I have to
> use `apt-get dist-upgrade` though.

How does a simple 'apt-get upgrade' fail?

> So I'm probably missing some special piuparts option or I messed up a
> dependency definition.

Well, I wonder how -d wheezy-backports-sloppy is useful in this case,
since we've got no packages in that distribution (yet).  Besides, one
doesn't dist-upgrade to backports, those aren't proper distributions.

>>> Moreover, upgrading from wheezy-backports works properly (3,4), but
>>> upgrading from wheezy directly to wheezy-backports-sloppy doesn't. Is
>>> the later supposed to work?
>> 
>> Well, direct upgrades from wheezy to stretch are not supported, but from
>> wheezy to wheezy-backports-sloppy... er, I don't know.  But it would be
>> nice, if feasible.
>
> I meant upgrading the Shibboleth packages, not the whole system.

That's the same thing, since packages make up the "whole system". :)

> That should work now, as I said above. :) For this I used piuparts's
> third test mode with `-d wheezy -d wheezy-backports -d wheezy-backports-sloppy`.

As above, what does -d wheezy-backports-sloppy achieve here?

>> You certainly have to revert 4a20cce3 to enable direct upgrades from
>> < 2.5.3+dfsg, so this is a good move.  Could you please send me the full
>> piuparts logs of the failing scenario with this change included?
>
> Log from `sudo piuparts -b /var/cache/pbuilder/base-wheezy-amd64.tgz
> --distribution=wheezy-backports-sloppy --arch=amd64 -D debian
> --install-recommends --no-install-purge-test -l ../piuparts.log
> ../shibboleth-sp2_2.6.0+dfsg1-3_amd64.changes` is attached.

Thanks, this is starting to make sense.  It's the very first "install"
step what fails, because wheezy-backports-sloppy does not contain
libapache2-mod-shib2, so the -t wheezy-backports-sloppy APT option does
not influence it, meaning that the wheezy version (2.4.3+dfsg-5+deb7u1)
is selected for installation.  On the other hand, libshibsp-plugins is
found in wheezy-backports only (2.5.3+dfsg-2~bpo70+1), so it's selected
for installation as well, but these two conflict and you get the error.

Use -d to specify the starting distribution (wheezy or wheezy-backports)
only, and provide the changes file for the upgrade test.
-- 
Feri



More information about the Pkg-shibboleth-devel mailing list