Bug 1161217

Summary: [Build 20200115][s390x-zVM] openQA test fails in bootloader_s390 - hostname_from_install_inf undefined method empty? for nil:NilClass
Product: [openSUSE] openSUSE Tumbleweed Reporter: Sergio Lindo Mansilla <slindomansilla>
Component: InstallationAssignee: E-mail List <yast2-maintainers>
Status: VERIFIED FIXED QA Contact: Jiri Srain <jsrain>
Severity: Normal    
Priority: P5 - None CC: ancor, azouhr, igonzalezsosa, ihno, kanderssen
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
URL: https://openqa.opensuse.org/tests/1147102/modules/bootloader_s390/steps/49
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: y2log-FKT0lA.tar.xz

Description Sergio Lindo Mansilla 2020-01-17 15:37:16 UTC
## Reproducible

- In scenario opensuse-Tumbleweed-DVD-s390x-textmode-server@s390x
- Fails since (at least) Build 20200115 (https://openqa.opensuse.org/tests/1147102/modules/bootloader_s390/steps/49)

## Always latest result in this scenario

- https://openqa.opensuse.org/tests/latest?arch=s390x&distri=opensuse&flavor=DVD&machine=s390x&test=textmode-server&version=Tumbleweed
Comment 1 Sergio Lindo Mansilla 2020-01-17 15:57:55 UTC
Comment 2 Sergio Lindo Mansilla 2020-01-17 15:58:08 UTC
Related? https://bugzilla.opensuse.org/show_bug.cgi?id=1156285
Comment 3 Sergio Lindo Mansilla 2020-01-17 16:03:41 UTC
I cannot reproduce it on my instance: http://openqa.slindomansilla-vm.qa.suse.de/tests/2095

I will try to get logs from the production machine.
Comment 4 Sergio Lindo Mansilla 2020-01-17 16:17:37 UTC
Created attachment 827753 [details]
Comment 5 Ancor Gonzalez Sosa 2020-01-21 12:24:58 UTC
The installer is trying to get the hostname from install.inf, where an IP address is specified:

sysconfig/hostname_reader.rb:82 Got from install.inf

Then, it tries to resolve that IP to get a name. That resolution fails, so a nil or an empty string (I'm not sure which one) is returned by Yast::NetHwDetection.ResolveIP. That results in the following log entry:

sysconfig/hostname_reader.rb:89 Got  after resolving IP from install.inf

But YaST tries to break that empty string (or nil) into a host and a domain part. Which is a nonsense and returns a nil host. Which makes YaST blow away.

I guess that #hostname_from_install_inf should return nil if install.inf contains an IP address that cannot be translated into a name. Imo, Knut, is that the case?

If so, I can fix it right away.
Comment 6 Ancor Gonzalez Sosa 2020-01-23 11:36:48 UTC
Fixed in yast2-network 4.2.47

See https://github.com/yast/yast-network/pull/1028 and the corresponding SR for SLE-15-SP2 https://build.suse.de/request/show/209920
Comment 7 Sergio Lindo Mansilla 2020-02-10 15:27:34 UTC
Verified on O3: https://openqa.opensuse.org/tests/1169814