Bug 1076969 - missing license text in Yast welcome page since TW 20180117 ppc64le
missing license text in Yast welcome page since TW 20180117 ppc64le
Status: RESOLVED FIXED
: 1077844 (view as bug list)
Classification: openSUSE
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: YaST2
Current
PowerPC Other
: P5 - None : Normal (vote)
: ---
Assigned To: E-mail List
Jiri Srain
https://openqa.opensuse.org/tests/585...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-01-22 07:59 UTC by Michel Normand
Modified: 2018-02-02 15:21 UTC (History)
6 users (show)

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


Attachments
y2log extracted from https://openqa.opensuse.org/tests/585132/file/welcome-y2logs.tar.bz2 (77.13 KB, text/x-log)
2018-01-22 13:39 UTC, Michel Normand
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michel Normand 2018-01-22 07:59:00 UTC
missing license text in Yast welcome page since TW 20180117 ppc64le


[Build 20180117] openQA test fails in welcome
## Observation

openQA test in scenario opensuse-Tumbleweed-DVD-ppc64le-RAID0@ppc64le fails in
[welcome](https://openqa.opensuse.org/tests/585132/modules/welcome/steps/7)


## Reproducible

Fails since (at least) Build [20180117](https://openqa.opensuse.org/tests/585132) (current job)


## Expected result

Last good: [20180116](https://openqa.opensuse.org/tests/583825) (or more recent)


## Further details

Always latest result in this scenario: [latest](https://openqa.opensuse.org/tests/latest?arch=ppc64le&distri=opensuse&test=RAID0&version=Tumbleweed&machine=ppc64le&flavor=DVD)
Comment 1 Michel Normand 2018-01-22 13:26:34 UTC
* compare the y2log between snapshot 20180116 (passed) and 20180117 (failed)
  confirm that when failure there is no search of license
  I do not understand why.  

===
=== 20180116 (passed)
===
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Hooks.rb:162 Executing hook 'before_complex_welcome'
2018-01-16 22:58:19 <1> install(2963) [Interpreter] modules/ProductControl.rb:1355 Calling YaST client inst_complex_welcome
2018-01-16 22:58:19 <1> install(2963) [Ruby] yast/wfm.rb:296 Call client /mounts/mp_0001/usr/share/YaST2/clients/inst_complex_welcome.rb
2018-01-16 22:58:19 <1> install(2963) [Pkg] clients/inst_complex_welcome.rb:45 Pkg Builtin called: SourceGetCurrent
2018-01-16 22:58:19 <1> install(2963) [Ruby] clients/inst_complex_welcome.rb:45 Index 0 is out of array size
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/GetInstArgs.rb:50 args=$["enable_back":false, "enable_next":true, "first_run":"yes"]
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Keyboard.rb:319 keyboard model used: pc104
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Misc.rb:188 ."/etc/os-release"."ID": 'opensuse'
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/GetInstArgs.rb:50 args=$["enable_back":false, "enable_next":true, "first_run":"yes"]
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/GetInstArgs.rb:50 args=$["enable_back":false, "enable_next":true, "first_run":"yes"]
2018-01-16 22:58:19 <1> install(2963) [Pkg] modules/ProductLicense.rb:321 Pkg Builtin called: SourceGetCurrent
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/ProductLicense.rb:782 Searching for licenses... (src_id: nil, fallback_dir: /, mode: installation, stage: initial)
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/ProductLicense.rb:810 Base product, initial stage
2018-01-16 22:58:19 <1> install(2963) [Pkg] modules/ProductLicense.rb:321 Pkg Builtin called: SourceGetCurrent
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/ProductLicense.rb:591 Getting license from installation product
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/ProductLicense.rb:596 Installation Product has a license
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/ProductLicense.rb:828 ProductLicense settings: license_dir: /tmp/YaST2-02963-009Khm/product-license/base-product/, tmpdir: /tmp/YaST2-02963-009Khm/product-license/base-product/, info_file: nil
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/ProductLicense.rb:375 License agreement (ID 0) will NOT be required
2018-01-16 22:58:19 <1> install(2963) [Ruby] clients/inst_complex_welcome.rb:151 Acceptance needed:  => false
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Keyboard.rb:463 GetKeyboardForLanguage lang:en_US def:english-us ret:english-us
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Keyboard.rb:1065 set to english-us
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Keyboard.rb:500 Setting keyboard to: <english-us>
2018-01-16 22:58:19 <1> install(2963) [Ruby] modules/Keyboard.rb:319 keyboard model used: pc104
===
=== 20180117 (failed)
===
2018-01-18 12:26:51 <1> install(2966) [Ruby] modules/Hooks.rb:162 Executing hook 'before_complex_welcome'
2018-01-18 12:26:51 <1> install(2966) [Interpreter] modules/ProductControl.rb:1355 Calling YaST client inst_complex_welcome
2018-01-18 12:26:51 <1> install(2966) [Ruby] yast/wfm.rb:296 Call client /mounts/mp_0001/usr/share/YaST2/clients/inst_complex_welcome.rb
2018-01-18 12:26:51 <1> install(2966) [Pkg] y2packager/product_reader.rb:109 Pkg Builtin called: ResolvableProperties
2018-01-18 12:26:51 <1> install(2966) [zypp] PoolImpl.h(reapplyHardLocks):231 Re-apply 0 HardLockQueries
2018-01-18 12:26:51 <1> install(2966) [zypp] PoolImpl.h(reapplyHardLocks):237 HardLockQueries match 0 Solvables.
2018-01-18 12:26:51 <1> install(2966) [Ruby] y2packager/product_reader.rb:115 Found products: []
2018-01-18 12:26:51 <1> install(2966) [Ruby] y2packager/product_reader.rb:93 available base products []
2018-01-18 12:26:51 <1> install(2966) [Ruby] modules/GetInstArgs.rb:50 args=$["enable_back":false, "enable_next":true, "first_run":"yes"]
2018-01-18 12:26:51 <1> install(2966) [Ruby] modules/GetInstArgs.rb:50 args=$["enable_back":false, "enable_next":true, "first_run":"yes"]
2018-01-18 12:26:52 <1> install(2966) [Ruby] modules/Keyboard.rb:314 keyboard model used: pc104
===
Comment 2 Michel Normand 2018-01-22 13:31:26 UTC
(In reply to Michel Normand from comment #1)
> * compare the y2log between snapshot 20180116 (passed) and 20180117 (failed)
>   confirm that when failure there is no search of license
>   I do not understand why.  

Imo, do you have any suggestion ?
Comment 3 Michel Normand 2018-01-22 13:39:22 UTC
Created attachment 757109 [details]
y2log extracted from https://openqa.opensuse.org/tests/585132/file/welcome-y2logs.tar.bz2
Comment 4 Imobach Gonzalez Sosa 2018-01-23 14:49:11 UTC
There might be some problem with the repository, as YaST is unable to get a list of products:

2018-01-18 12:26:51 <1> install(2966) [zypp] PoolImpl.h(reapplyHardLocks):231 Re-apply 0 HardLockQueries                                                                                                       
2018-01-18 12:26:51 <1> install(2966) [zypp] PoolImpl.h(reapplyHardLocks):237 HardLockQueries match 0 Solvables.
2018-01-18 12:26:51 <1> install(2966) [Ruby] y2packager/product_reader.rb:115 Found products: []                                                                                                               
2018-01-18 12:26:51 <1> install(2966) [Ruby] y2packager/product_reader.rb:93 available base products []

About the difference between both logs, I've seen that the latest image contains A LOT of changes: for instance, yast2-packager went from version 3.3.2 to 4.0.29. One of those changes is YaST will read licenses from libzypp, so the old code to get licenses does not apply anymore.
Comment 5 Michel Normand 2018-01-23 17:32:40 UTC
(In reply to Imobach Gonzalez Sosa from comment #4)

I do not understand where is supposed to be those missing products informations.

If I mount the used DVD, I can see in it the media.1/products file as detailed below.
===
wget https://openqa.opensuse.org/tests/589090/asset/iso/openSUSE-Tumbleweed-DVD-ppc64le-Snapshot20180122-Media.iso
...
mount ... 
===
$ls ../os/
ARCHIVES.gz  GPLv2.txt  INDEX.gz  SuSEgo.ico  SuSEgo.svg  content      content.key  directory.yast  gpg-pubkey-307e3d54-4be01a65.asc  license.tar.gz  media.1  suse
ChangeLog    GPLv3.txt  README    SuSEgo.png  boot        content.asc  control.xml  docu            gpg-pubkey-3dbdc284-53674dd4.asc  ls-lR.gz        ppc
$ls ../os/media.1/
build  directory.yast  media  products  products.asc  products.key
$cat ../os/media.1/products
/ openSUSE 20180122-0
===
Comment 6 Michel Normand 2018-01-24 08:48:19 UTC
Hello Dominique and Andreas, do we need to change something in the PowerPC iso packaging since snapshot 20180117 ?
Comment 7 Andreas Schwab 2018-01-24 09:07:17 UTC
I do not know anything about product building.
Comment 8 Josef Reidinger 2018-01-24 14:45:14 UTC
Well, it can be related to feature that installer is now installable with simple repomd repository so way how license is defined changed (now it is somehow defined in product).

but details how it is now defined should know Dominique or our libzypp expert. So keeping needinfo on dimstar.
Comment 9 Michael Andres 2018-01-25 11:46:46 UTC
The license is defined in the repository metadata. repodata/repomd.xml lists the license tarballs as '<data type="license[-productname]">'. The license tarballs themseleves are usually 'repodata/*license[-productname].tar.gz'.
Comment 10 Dominique Leuenberger 2018-01-26 16:12:24 UTC
linuxrc.log seems to have found licenses:

17:29:54 <4>: url = file:/var/adm/mount
17:29:54 <4>: url = file:/var/adm/mount/license.tar.gz
17:29:54 <2>: loading file:/var/adm/mount/license.tar.gz -> /download/file_0010
17:29:54 <2>: sha1   1a5af4405b06dc934624b0e8ed85a907...
17:29:54 <2>: sha256 1f4160ab7be19284b18d46eb9a985231...
17:29:54 <2>: digest not checked
17:29:54 <2>: mv /download/file_0010 -> /license.tar.gz

(In reply to Michael Andres from comment #9)
> The license is defined in the repository metadata. repodata/repomd.xml lists
> the license tarballs as '<data type="license[-productname]">'. The license
> tarballs themseleves are usually 'repodata/*license[-productname].tar.gz'.

Only when using an rpm-md style repo - TW is still on susetags

(In reply to Josef Reidinger from comment #8)
> Well, it can be related to feature that installer is now installable with
> simple repomd repository so way how license is defined changed (now it is
> somehow defined in product).

The product 'should' be inherited from openSUSE:Factory/_product; the only thing that is overwritten in :PowerPC is the .group files (package lists) and the media names.
Comment 11 Dominique Leuenberger 2018-01-26 16:14:57 UTC
The diff of the .product between openSUSE:Factory and :PowerPC is small, as expected. All other settings come in directly from openSUSE:Factory, where the license is shown correctly

https://build.opensuse.org/package/rdiff/openSUSE:Factory:PowerPC/_product?opackage=_product&oproject=openSUSE%3AFactory&rev=2220
Comment 12 Josef Reidinger 2018-01-29 13:43:57 UTC
*** Bug 1077844 has been marked as a duplicate of this bug. ***
Comment 13 Josef Reidinger 2018-01-31 15:31:31 UTC
can you please retest it with the latest ppc build? there was some problems with TW on ppc building.
Comment 14 Michel Normand 2018-02-02 15:15:27 UTC
(In reply to Josef Reidinger from comment #13)
> can you please retest it with the latest ppc build? there was some problems
> with TW on ppc building.

The Snapshot 20180131 do not show the problem anymore,
so we should consider this bug as solved with this Snapshot.

Nevertheless it would be interesting to add here details or references of what was the "problems with TW on ppc building".
Was it a missing file or a specific package that did not built ?
Comment 15 Dominique Leuenberger 2018-02-02 15:21:57 UTC
skelcd-control-openSUSE was not building, and with the move to storage-ng, the format changed; so we had new yast modules with old skelcd defintions in place, causing all kind of weird issues.

The fix was done my Michel:

https://github.com/yast/skelcd-control-openSUSE/pull/108