Subject: Re: [X2Go-Dev] Bug#783: RPM Pre Script fail on Upgrade (Nightly)

From: Mike Gabriel <[email-masked]>
Date: Mon, 09 Feb 2015 13:07:53 +0000

Hi Schlomo.

On  Mo 09 Feb 2015 12:49:16 CET, Schlomo Schapiro wrote:

> Package: x2goserver
> Version: 4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6
>
> RPM Upgrades of existing installations fail because of a broken %pre
> script in the x2goserver-common RPM:
>
> Resolving Dependencies
> --> Running transaction check
> ---> Package x2goserver-common.x86_64
> 0:4.1.0.0-0.0x2go1.0.git20150113.1214.heuler.el6 will be updated
> ---> Package x2goserver-common.x86_64
> 0:4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6 will be an update
> --> Finished Dependency Resolution
>
> Dependencies Resolved
>
> ==============================================================================================================================================
>  Package                      Arch
> Version
> Repository                    Size
> ==============================================================================================================================================
> Updating:
>  x2goserver-common            x86_64
> 4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6
> is24-x2go-nightly            7.2 k
>
> Transaction Summary
> ==============================================================================================================================================
> Upgrade       1 Package(s)
>
> Total download size: 7.2 k
> Is this ok [y/N]: y
> Downloading Packages:
> x2goserver-common-4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6.x86_64.rpm
> | 7.2 kB     00:00
> Running rpm_check_debug
> Running Transaction Test
> Transaction Test Succeeded
> Running Transaction
> Error in PREIN scriptlet in rpm package
> x2goserver-common-4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6.x86_64
> groupadd: group 'x2gouser' already exists
> useradd: user 'x2gouser' already exists
> error:
> %pre(x2goserver-common-4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6.x86_64)
> scriptlet failed, exit status 9
> error:   install: %pre scriptlet failed (2), skipping
> x2goserver-common-4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6
> Running post transaction command: report-yum-to-graphite.sh
> x2goserver-common-4.1.0.0-0.0x2go1.0.git20150113.1214.heuler.el6.x86_64
> was supposed to be removed but is not!
>   Verifying  :
> x2goserver-common-4.1.0.0-0.0x2go1.0.git20150113.1214.heuler.el6.x86_64
> 1/2
>   Verifying  :
> x2goserver-common-4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6.x86_64
> 2/2
>
> Failed:
>   x2goserver-common.x86_64
> 0:4.1.0.0-0.0x2go1.0.git20150113.1214.heuler.el6
>
>   x2goserver-common.x86_64
> 0:4.1.0.0-0.0x2go1.0.git20150201.1236.heuler.el6
>
>
> Complete!
>
> The bad script is this:
>
> if getent group x2gouser 1>/dev/null; then
>     groupadd -r x2gouser
> fi
> if getent passwd x2gouser >/dev/null; then
>     useradd -r -g x2gouser -d /var/lib/x2go -s /sbin/nologin \
>             -c "x2go" x2gouser
> fi
>
> It should have a ! in the if clause to only call groupadd / useradd  
> if the group or user DO NOT EXIST!!

Yep, should already have been fixed for several days by [1].

> Don't you test upgrades???

Nope, not always.

/me wonders, if your nightly builds are not obtained from  
packages.x2go.org but from a non-up-to-date repo. Possibly we may have  
a problem in the EPEL-6 nightly builds archive.

Mike

[1]  
http://code.x2go.org/gitweb?p=x2goserver.git;a=commitdiff;h=0838f4686fc0dd15c66840fecd665e38a7ea1bca
-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: [email-masked], http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb