PDA

View Full Version : update self build rpms



MoserHans
12-Feb-2015, 10:58
Hi,

I build newer versions of openldap in the SuSE Build Service.
2.4.39 is installed on the SLES 11 SP 3 machine.

(I used ansible for this, great tool, have a look at it, if you have not used any configuration management tool before!)


# rpm -qa | grep openldap
openldap2-2.4.39-0
openldap2-client-2.4.39-0


I build 2.4.40 and copied the files to my http repo.

Unfortunatly my ansible script does not update.

tasks:
- name: install LDAP RPMs
zypper: name={{ item }} state=latest disable_gpg_check=yes
with_items:
- libdb-4_8
- openldap2-client
- libldap-2_4-2
- libldap-2_4-2-32bit
- openldap2


I checked with zypper on the machine:

# zypper up openldap2
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following packages are going to be upgraded:
libldap-2_4-2 openldap2 openldap2-client

The following packages are not supported by their vendor:
libldap-2_4-2 openldap2 openldap2-client

3 packages to upgrade.
Overall download size: 1.5 MiB. After the operation, 1.6 MiB will be freed.
Continue? [y/n/? shows all options] (y): n

The new rpms are found. But zypper warns with "are not supported by their vendor".
I think this prevends ansible from automatically update the rpms.

I have a vendors file for obs created before

# cat "/etc/zypp/vendors.d/obs"
vendors = obs://build.opensuse.org



# zypper if openldap2
Loading repository data...
Reading installed packages...


Information for package openldap2:

Repository: Netzdienste Repo
Name: openldap2
Version: 2.4.40-0
Arch: x86_64
Vendor: obs://build.opensuse.org/home:MoserHans
Support Level: unknown
Installed: Yes
Status: out-of-date (version 2.4.39-0 installed)
Installed Size: 3.1 MiB
Summary: The OpenLDAP Server
Description:
The Lightweight Directory Access Protocol (LDAP) is used to access
online directory services. It runs directly over TCP and can be used to
access a stand-alone LDAP directory service or to access a directory
service that has an X.500 back-end.
:~ # rpm -qi openldap2
Name : openldap2 Relocations: (not relocatable)
Version : 2.4.39 Vendor: obs://build.opensuse.org/home:MoserHans
Release : 0 Build Date: Tue 10 Jun 2014 03:44:28 PM CEST
Install Date: Mon 17 Nov 2014 03:27:19 PM CET Build Host: buildhost-sp3
Group : Productivity/Networking/LDAP/Clients Source RPM: openldap2-2.4.39-0.src.rpm
Size : 4936865 License: OLDAP-2.8
Signature : (none)
URL : http://www.openldap.org
Summary : The OpenLDAP Server
Description :
The Lightweight Directory Access Protocol (LDAP) is used to access
online directory services. It runs directly over TCP and can be used to
access a stand-alone LDAP directory service or to access a directory
service that has an X.500 back-end.
Distribution: home:MoserHans:branches:network:ldap / SLE_11_SP3


What am I missing?

smflood
12-Feb-2015, 18:05
On 12/02/2015 10:04, MoserHans wrote:

> I build newer versions of openldap in the SuSE Build Service.
> 2.4.39 is installed on the SLES 11 SP 3 machine.

Given latest openldap2 package available from SUSE is 2.4.26-0.28.5 I'm
guessing you installed your own version 2.4.39?

> (I used ansible for this, great tool, have a look at it, if you have not
> used any configuration management tool before!)

I agree re Ansible. Which version are you using? I've been building
various versions using the OBS with 1.8.1 the latest released.

How did you install openldap2 version 2.4.39, via ansible or "manually"
via zypper/YaST?

> Code:
> --------------------
> # rpm -qa | grep openldap
> openldap2-2.4.39-0
> openldap2-client-2.4.39-0
>
> --------------------
>
>
> I build 2.4.40 and copied the files to my http repo.
>
> Unfortunatly my ansible script does not update.
>
> Code:
> --------------------
> tasks:
> - name: install LDAP RPMs
> zypper: name={{ item }} state=latest disable_gpg_check=yes
> with_items:
> - libdb-4_8
> - openldap2-client
> - libldap-2_4-2
> - libldap-2_4-2-32bit
> - openldap2
>
> --------------------
>
>
> I checked with zypper on the machine:
>
> Code:
> --------------------
> # zypper up openldap2
> Loading repository data...
> Reading installed packages...
> Resolving package dependencies...
>
> The following packages are going to be upgraded:
> libldap-2_4-2 openldap2 openldap2-client
>
> The following packages are not supported by their vendor:
> libldap-2_4-2 openldap2 openldap2-client
>
> 3 packages to upgrade.
> Overall download size: 1.5 MiB. After the operation, 1.6 MiB will be freed.
> Continue? [y/n/? shows all options] (y): n
>
> --------------------
>
> The new rpms are found. But zypper warns with "are not supported by
> their vendor".
> I think this prevends ansible from automatically update the rpms.
>
> I have a vendors file for obs created before
>
> Code:
> --------------------
> # cat "/etc/zypp/vendors.d/obs"
> vendors = obs://build.opensuse.org
>
> --------------------
>
>
>
> Code:
> --------------------
> # zypper if openldap2
> Loading repository data...
> Reading installed packages...
>
>
> Information for package openldap2:
>
> Repository: Netzdienste Repo
> Name: openldap2
> Version: 2.4.40-0
> Arch: x86_64
> Vendor: obs://build.opensuse.org/home:MoserHans
> Support Level: unknown
> Installed: Yes
> Status: out-of-date (version 2.4.39-0 installed)
> Installed Size: 3.1 MiB
> Summary: The OpenLDAP Server
> Description:
> The Lightweight Directory Access Protocol (LDAP) is used to access
> online directory services. It runs directly over TCP and can be used to
> access a stand-alone LDAP directory service or to access a directory
> service that has an X.500 back-end.
> :~ # rpm -qi openldap2
> Name : openldap2 Relocations: (not relocatable)
> Version : 2.4.39 Vendor: obs://build.opensuse.org/home:MoserHans
> Release : 0 Build Date: Tue 10 Jun 2014 03:44:28 PM CEST
> Install Date: Mon 17 Nov 2014 03:27:19 PM CET Build Host: buildhost-sp3
> Group : Productivity/Networking/LDAP/Clients Source RPM: openldap2-2.4.39-0.src.rpm
> Size : 4936865 License: OLDAP-2.8
> Signature : (none)
> URL : http://www.openldap.org
> Summary : The OpenLDAP Server
> Description :
> The Lightweight Directory Access Protocol (LDAP) is used to access
> online directory services. It runs directly over TCP and can be used to
> access a stand-alone LDAP directory service or to access a directory
> service that has an X.500 back-end.
> Distribution: home:MoserHans:branches:network:ldap / SLE_11_SP3
>
> --------------------
>
>
> What am I missing?

It's possible Ansible is tripping up because of the "not supported"
status but if you had previously installed 2.4.39 via Ansible that would
make me think it's something else.

Checking the latest source for the zypper module it seems in the above
scenario Ansible passes --non-interactive and --auto-agree-with-licenses
(plus in your case --no-gpg-checks) parameters to zypper when updating
already installed packages. None of those parameters have anything to do
with the "not supported" status other than --non-interactive
automatically agreeing to defaults responses - "not supported" is a warning.

What does "zypper se -is openldap2" report?

HTH.
--
Simon
SUSE Knowledge Partner

------------------------------------------------------------------------
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below. Thanks.
------------------------------------------------------------------------

MoserHans
13-Feb-2015, 11:41
On 12/02/2015 10:04, MoserHans wrote:

> I build newer versions of openldap in the SuSE Build Service.
> 2.4.39 is installed on the SLES 11 SP 3 machine.
Given latest openldap2 package available from SUSE is 2.4.26-0.28.5 I'm
guessing you installed your own version 2.4.39?
[color=blue]
Yes, I did.


How did you install openldap2 version 2.4.39, via ansible or "manually"
via zypper/YaST?
[color=blue]
via ansible. That's why a created the vendor file, to allow the vendor change without any further questions.



It's possible Ansible is tripping up because of the "not supported"
status but if you had previously installed 2.4.39 via Ansible that would
make me think it's something else.

Checking the latest source for the zypper module it seems in the above
scenario Ansible passes --non-interactive and --auto-agree-with-licenses
(plus in your case --no-gpg-checks) parameters to zypper when updating
already installed packages. None of those parameters have anything to do
with the "not supported" status other than --non-interactive
automatically agreeing to defaults responses - "not supported" is a warning.

I'm still an ansible 1.6.1
There no ansible 1.8.2 for SLES 11 SP 1 in the OBS at the moment, which I could update to.


What does "zypper se -is openldap2" report?


# zypper se -is openldap2
Loading repository data...
Reading installed packages...

S | Name | Type | Version | Arch | Repository
--+------------------+---------+----------+--------+-----------------
i | openldap2 | package | 2.4.39-0 | x86_64 | myown Repo
i | openldap2-client | package | 2.4.39-0 | x86_64 | myown Repo