coordination #160949
closed[epic] Verify the consistency of the self-update repository for test repos
100%
Description
Motivation¶
See bsc#1224833
Update channels might be inconsistent, official ones (like the case of this bug) or the testing one (the ones used in aggregates for example).
As the channel is added as boot param and at that point there is not even a dependency check to detect this, the problem is quite difficult to detect and we have seen multiple teams investigating, SCC, YaST, maintenance expert, because the error is not clear, some component of the installer fails in a strange way producing some pop-up which most likely end up in a bug for other developers until YaST ones realized the packages are inconsistent.
Acceptance criteria¶
AC1: Consistency of the self-update repository can be tested for each product tested in maintenance.
Suggestions¶
How to implement it:
- Create a test suite in support image job group with an auto-installation of a minimal GA system (without updates!) and leave it running there for reproduciblity, but we are interested in having an image and put it in the /fixed directory in openQA as the result of this test suite will be exactly the same same every day that is running.
- Boot the image and add the self-update repository which you want to test using "zypper addrepo". It can be either the official published repository or it can be the testing one that we use in aggregate maintenance updates.
- Run "zypper dup", it should cleanly update the packages from the self-update repository without any dependency issues. That zypper dup should not be expensive (in terms of resources or time) , the self-update repository only contains updates for YaST and related packages like libzypp. It is a very small subset of the full Updates repository. For example, currently there are just 15 packages for SP5 and it will very likely not grow anymore. The zypper dup should be very quick, we do an equivalent call in YaST at the beginning of installation and it really takes few seconds (there are not update channels so it is fast!).
- Just to be sure, Run some YaST module to verify it really still works (like "yast2 sw_single"), probably in both GUI and text mode. Just opening should be fine, that should load all used libraries (libzypp, libQt,...) and if they are not compatible it would crash. As a smoke test that should be enough.
- Create a test suite in support image job group with an auto-installation of a minimal GA system (without updates!) and leave it running there for reproduciblity, but we are interested in having an image and put it in the /fixed directory in openQA as the result of this test suite will be exactly the same same every day that is running.
Where to do it:
- For each product in aggregate maintenance (with self update testing channel) and for each product that we use in product validation as origin product to be migrated (with self update official channel) and of course per each architecture.
Updated by JERiveraMoya about 2 months ago
Remaining part of this epic is to verify it for official repos.
Updated by JERiveraMoya about 1 month ago
- Subject changed from [epic] Verify the consistency of the self-update repository to [epic] Verify the consistency of the self-update repository for test repos
- Status changed from Workable to Resolved