Bug 1215879 - SLE_BCI repository provides package version not matching the Service Pack
Summary: SLE_BCI repository provides package version not matching the Service Pack
Status: IN_PROGRESS
Alias: None
Product: PUBLIC SUSE Linux Enterprise Base Container Images
Classification: openSUSE
Component: bci-base (show other bugs)
Version: latest
Hardware: x86-64 Other
: P5 - None : Normal
Target Milestone: ---
Assignee: BCI Internal Team
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-10-02 16:05 UTC by Alexander Hass
Modified: 2023-10-13 15:43 UTC (History)
8 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Hass 2023-10-02 16:05:47 UTC
The SLE_BCI repository seems to provide package versions which do not match the Service Pack they are installed on:
For example when using the sle15:15.3 image the package libncurses6 is already installed in version 6.1-150000.5.15.1 from repository SLE_BCI.
Unfortunately this version is usually not available in SLES 15 SP3 and therefore causes the following problem:

bb85cc7ae676:/ # zypper install readline-devel
[..]

Problem: the to be installed readline-devel-7.0-19.6.1.x86_64 requires 'ncurses-devel', but this requirement cannot be provided
  not installable providers: ncurses-devel-6.1-5.6.2.x86_64[PRODUCT]
                   ncurses-devel-6.1-150000.5.12.1.x86_64[UPDATE]
                   ncurses-devel-6.1-5.9.1.x86_64[UPDATE]
Solution 1: downgrade of libncurses6-6.1-150000.5.15.1.x86_64 to libncurses6-6.1-150000.5.12.1.x86_64
Solution 2: do not install readline-devel-7.0-19.6.1.x86_64
Solution 3: break readline-devel-7.0-19.6.1.x86_64 by ignoring some of its dependencies



# docker run -it suse/sle15:15.3 bash -c "zypper se --details libncurses6"
[..] 

S | Name        | Type    | Version           | Arch   | Repository
--+-------------+---------+-------------------+--------+-----------
i | libncurses6 | package | 6.1-150000.5.15.1 | x86_64 | SLE_BCI
Comment 1 Frederic Crozat 2023-10-03 06:02:15 UTC
Package shipped in SLE_BCI repository are packages from update channel from the associated product.

Since SLES15 SP3 is out of general support, some packages from LTSS channel might be used to populate SLE_BCI repository.
Comment 2 Frederic Crozat 2023-10-03 09:23:02 UTC
On unregistered system, zypper in readline-devel still works with SLE BCI repository.

What is your exact setup ATM ?
Comment 3 Felix Niederwanger 2023-10-03 09:30:11 UTC
I tried to reproduce the issue, but so far no luck:

> podman run --rm -ti suse/sle15:15.3 bash -c 'zypper ref && zypper -n in readline-devel'
> Refreshing service 'container-suseconnect-zypp'.
> Retrieving repository 'SLE_BCI' metadata .....................................................[done]
> Building repository 'SLE_BCI' cache ..........................................................[done]
> All repositories have been refreshed.
> Refreshing service 'container-suseconnect-zypp'.
> Loading repository data...
> Reading installed packages...
> Resolving package dependencies...
> 
> The following 4 NEW packages are going to be installed:
>   ncurses-devel pkg-config readline-devel tack
> 
> The following 4 packages are not supported by their vendor:
>   ncurses-devel pkg-config readline-devel tack
> 
> 4 new packages to install.
> Overall download size: 5.8 MiB. Already cached: 0 B. After the operation, additional 17.4 MiB will
> be used.
> Continue? [y/n/v/...? shows all options] (y): y
> Retrieving: pkg-config-0.29.2-1.436.x86_64 (SLE_BCI)                            (1/4), 231.6 KiB    
> Retrieving: pkg-config-0.29.2-1.436.x86_64.rpm ...............................................[done]
> Retrieving: tack-6.1-150000.5.15.1.x86_64 (SLE_BCI)                             (2/4), 176.8 KiB    
> Retrieving: tack-6.1-150000.5.15.1.x86_64.rpm ................................................[done]
> Retrieving: ncurses-devel-6.1-150000.5.15.1.x86_64 (SLE_BCI)                    (3/4),   5.3 MiB    
> Retrieving: ncurses-devel-6.1-150000.5.15.1.x86_64.rpm .......................................[done]
> Retrieving: readline-devel-7.0-19.6.1.x86_64 (SLE_BCI)                          (4/4),  48.1 KiB    
> Retrieving: readline-devel-7.0-19.6.1.x86_64.rpm .............................................[done]
> 
> Checking for file conflicts: .................................................................[done]
> (1/4) Installing: pkg-config-0.29.2-1.436.x86_64 .............................................[done]
> (2/4) Installing: tack-6.1-150000.5.15.1.x86_64 ..............................................[done]
> (3/4) Installing: ncurses-devel-6.1-150000.5.15.1.x86_64 .....................................[done]
> (4/4) Installing: readline-devel-7.0-19.6.1.x86_64 ...........................................[done]
> Refreshing service 'container-suseconnect-zypp'.
> Loading repository data...
> Reading installed packages...
> 
> S | Name        | Type    | Version           | Arch   | Repository
> --+-------------+---------+-------------------+--------+-----------
> i | libncurses6 | package | 6.1-150000.5.15.1 | x86_64 | SLE_BCI

Could this perhaps have been a transient issue, while the BCI repo has been synced with IBC?

Alexander, perhaps you can try again and let us know if the issue is still present?
Comment 4 bernd schubert 2023-10-04 09:00:33 UTC
(In reply to Frederic Crozat from comment #1)
> Package shipped in SLE_BCI repository are packages from update channel from
> the associated product.
> 
> Since SLES15 SP3 is out of general support, some packages from LTSS channel
> might be used to populate SLE_BCI repository.

I've checked the SCC the mentioned package version (libncurses6-6.1-150000.5.15.1.x86_64) is neither part of the LTSS repo nor an update channel of SLES 15 SP3

-> SCC search <- 
https://scc.suse.com/packages?name=SUSE%20Linux%20Enterprise%20Server&version=15.3&arch=x86_64&query=libncurses6&module=2570

The highest available version shown is  -> 6.1-150000.5.12.1
https://scc.suse.com/packages?name=SUSE%20Linux%20Enterprise%20Server&version=15.3&arch=x86_64&query=libncurses6&module=
Comment 5 Alexander Hass 2023-10-04 09:07:55 UTC
Thank you, Bernd, for confirming the package status within the available SLES 15 SP3 and LTSS repositories.

Felix, the BCI repository is not active in our setup as it has no connection to updates.suse.com.
Comment 6 Dirk Mueller 2023-10-04 09:16:50 UTC
It's not a transient issue, this happens on registered containers, it is easily reproducible. 

b678aab6b0a2:/ # zypper search -s libncurses6
Refreshing service 'Basesystem_Module_15_SP3_x86_64'.
Refreshing service 'SUSE_Linux_Enterprise_Server_15_SP3_x86_64'.
Refreshing service 'Server_Applications_Module_15_SP3_x86_64'.
Refreshing service 'container-suseconnect-zypp'.
Loading repository data...
Reading installed packages...

S | Name              | Type    | Version           | Arch   | Repository
--+-------------------+---------+-------------------+--------+------------------------------------------------------
>v | libncurses6       | package | 6.1-150000.5.12.1 | x86_64 | SLE-Module-Basesystem15-SP3-Updates
v | libncurses6       | package | 6.1-150000.5.12.1 | x86_64 | SLE-Module-Basesystem15-SP3-Updates for sle-15-x86_64
v | libncurses6       | package | 6.1-5.9.1         | x86_64 | SLE-Module-Basesystem15-SP3-Updates
v | libncurses6       | package | 6.1-5.9.1         | x86_64 | SLE-Module-Basesystem15-SP3-Updates for sle-15-x86_64
v | libncurses6       | package | 6.1-5.6.2         | x86_64 | SLE-Module-Basesystem15-SP3-Pool
v | libncurses6       | package | 6.1-5.6.2         | x86_64 | SLE-Module-Basesystem15-SP3-Pool for sle-15-x86_64
>i | libncurses6       | package | 6.1-150000.5.15.1 | x86_64 | SLE_BCI


the issue here is that we refreshed the image and the repo, but SP3-Updates does not include the packages that were shipped. I don't have a LTSS subscription to test against right now, but it *appears* it is also not in LTSS.
Comment 12 Marcus Meissner 2023-10-04 12:34:59 UTC
Due to nature of LTSS containers build we currently run in this issue.

Usually LTSS would only be there for running workloads, not for building anymore.

Is there a chance to easily upgrade to SP4 or SP5 level?
Comment 13 Alexander Hass 2023-10-05 14:04:33 UTC
I do not think it is intended or possible to update the environment to a newer Service Pack, currently. But I also think we can work around the problem, e.g by downgrading selected packages, now that it has been identified.
Nevertheless I had actually expected that a BCI named after a certain Service Pack only contains package versions available within that specified Service Pack. Maybe there is a possibility to improve the situation in future - and if only to include the updated packages into the respective Service Packs' LTSS repositories as well.
Comment 14 Dirk Mueller 2023-10-13 15:43:22 UTC
(In reply to Alexander Hass from comment #13)

> I do not think it is intended or possible to update the environment to a
> newer Service Pack, currently. But I also think we can work around the
> problem, e.g by downgrading selected packages, now that it has been
> identified.

Thanks. we'll work on providing an image that matches the LTSS Update channels. This mismatch is an update that includes a lower severity security fix, which landed in the container image already, but there is no matching -devel package released.