Bug 947686

Summary: LEAP 42.1 Beta [DVD-based install] - No network during Installation, online repositories cannot be added
Product: [openSUSE] openSUSE Tumbleweed Reporter: Tony Su <tonysu>
Component: InstallationAssignee: E-mail List <yast2-maintainers>
Status: RESOLVED FIXED QA Contact: Jiri Srain <jsrain>
Severity: Normal    
Priority: P5 - None CC: ancor, mfilka, tonysu, wicked-maintainers
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Screenshot selecting online repos during Install
Screenshot Error - Unable to connect to repos - reason no network
y2logs - LEAP Beta1 Fail to connect to online repos
Readable logs

Description Tony Su 2015-09-26 21:10:49 UTC
This issue was seen in earlier versions of LEAP, but I figure by now (official Beta 1) that this should be wired up and working.

During installation, when prompted if online and third party repositories should be added, when the checkbox for online repositores is selected, later during the installation a notification pops up that online repositories could not be added (and asks whether to continue)
Comment 1 Ladislav Slezák 2015-10-01 12:11:33 UTC
Please, attach the YaST log (see https://en.opensuse.org/Bugs/YaST).
Comment 2 Tony Su 2015-10-03 22:30:10 UTC
Created attachment 650021 [details]
Screenshot selecting online repos during Install

Screenshot 1 - Selecting online repos during install.

To Follow...
Screenshot 2
y2logs
Comment 3 Tony Su 2015-10-03 22:32:25 UTC
Created attachment 650022 [details]
Screenshot Error - Unable to connect to repos - reason no network

Screenshot 2 - Unable to connect to online repos during install - Reason no networking

Still to follow:
y2logs
Comment 4 Tony Su 2015-10-03 22:38:48 UTC
Created attachment 650023 [details]
y2logs - LEAP Beta1 Fail to connect to online repos

y2logs containing installation logs
Comment 5 Lukas Ocilka 2015-10-07 13:53:11 UTC
Created attachment 650510 [details]
Readable logs
Comment 6 Lukas Ocilka 2015-10-07 13:58:12 UTC
Michal pls check this:

modules/ProductControl.rb:1354 Calling YaST client inst_install_inf
- There was no Linuxrc-based network as this is an installation from DVD

modules/ProductControl.rb:1320 Running module: `inst_setup_dhcp ($["enable_back":true, "enable_next":true]) (1)
- Network AutoSetup was called

network/routines.rb:905 Setting link up for interface eth0
network/network_autoconfiguration.rb:34 Candidates for enabling DHCP: ["eth0"]
modules/NetworkInterfaces.rb:804 Devs=$["eth":$["eth0":$["BOOTPROTO":"dhcp", "BROADCAST":"", "DHCLIENT_SET_DEFAULT_ROUTE":nil, "ETHTOOL_OPTIONS":"", "IPADDR":"", "MTU":"", "NAME":"", "NETMASK":"", "NETWORK":"", "REMOTE_IPADDR":"", "STARTMODE":"auto", "_aliases":$[]]], "lo":$["lo":$["BOOTPROTO":"static", "BROADCAST":"127.255.255.255", "FIREWALL":"no", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"nfsroot", "USERCONTROL":"no"]]]
--> [bash] ShellCommand.cc(shellcommand):78 wicked: ifreload: no matching interfaces

No network at the end (?)... but Calling `inst_setup_dhcp ($["enable_back":true, "enable_next":true]) returned `next
Comment 7 Lukas Ocilka 2015-10-07 14:00:54 UTC
Tony, what happens if you let Linuxrc setup your network?
Boot the Installation with adding this to Linuxrc commandline:

    ifcfg=*=dhcp

Do you have network then?

What about /sbin/ifconfig` or `ip a` on a console or xterm?
To open xterm in Installer, press Ctrl+Shift+Alt+X
Comment 8 Tony Su 2015-10-07 18:17:22 UTC
(In reply to Lukas Ocilka from comment #7)
> Tony, what happens if you let Linuxrc setup your network?
> Boot the Installation with adding this to Linuxrc commandline:
> 
>     ifcfg=*=dhcp
> 
> Do you have network then?
> 
> What about /sbin/ifconfig` or `ip a` on a console or xterm?
> To open xterm in Installer, press Ctrl+Shift+Alt+X

I'm uncertain how to do this.
Just as I earlier entered a "boot option" to generate the verbose y2logs, I first tried to enter "ifcfg=*=dhcp" as a boot option with no change in result.

I then attempted to send a "CTL-SHFT-ALT-X" on the same screen, but it wouldn't work (maybe it might work later?)

Since the install is in a VMware Guest using a DVD source, I don't know that it's possible to edit a configuration file and I'm not sure how it might be possible to edit the linuxrc command line parameters if not by using the "boot options" field.

I hope I'm not reading the situation wrong by saying networking is not working (BTW - VMware believes that the network adapter is active, but that's not necessarily how openSUSE might read state from within) Note the second screenshot I posted, the install says that the network configuration was tested and passed successfully. Then it says "unable to download list of repositories or no repositories defined"
Comment 9 Michal Filka 2015-10-07 18:50:45 UTC
> --> [bash] ShellCommand.cc(shellcommand):78 wicked: ifreload: no matching
> interfaces
> 
this is result of 

wicked ifreload eth0

@wicked team: could you help us with debuging?

@Tony:
Could you pls attach wicked logs too?
Comment 10 Michal Filka 2015-10-07 18:55:18 UTC
For completeness:
/var/log/wickedd.log
Comment 11 Tony Su 2015-10-09 16:52:03 UTC
(In reply to Michal Filka from comment #10)
> For completeness:
> /var/log/wickedd.log

Does not exist.
Believe this is because unless legacy logging is somehow enabled during the install all entries are written to the journal(if it's running). I have already attached all the YAST2logs for whatever info they can provide.

On first full boot, I also explored whether I could extract any install boot log entries in the journal but only the first complete boot is accessible (after install). I can attach an entire journal if someone might find it useful, but I don't know if it will include what you want (Are entries even written to the journal during install? Don't know).

If a boot option before install will generate the desired log, am willing to run an install with that option.
Comment 12 Ancor Gonzalez Sosa 2015-10-13 06:12:05 UTC
If the systemd journal is used, then you can get the wickedd journal by running

journalctl -u wickedd.service > wickedd.log

Hmm... that makes me think. We should add an "export to file" button to YaST2-journal.
Comment 13 Lukas Ocilka 2015-10-15 14:00:18 UTC
I've just reproduced the issue.

Control file for Leap 42.1 contains:

<software>
<external_sources_link>http://download.opensuse.org/YaST/Repos/openSUSE_42.1_Servers.xml</external_sources_link>
</software>

Installer then tries to download it:
modules/NetworkService.rb:312 IPv4 network is running ...
clients/inst_productsources.rb:783 Preferred language: en_US en
clients/inst_productsources.rb:445 Got link: http://download.opensuse.org/YaST/Repos/openSUSE_42.1_Servers.xml
clients/inst_productsources.rb:453 Using link: http://download.opensuse.org/YaST/Repos/openSUSE_42.1_Servers.xml

and gets:
CurlAgent.cc(Execute):269 Data:
CurlAgent.cc(Execute):270 Output: /tmp/YaST2-02794-fjya66/inst_productsources_downloadfile
CurlAgent.cc(Get):166 curl returned -> response code: 404, total size: 1046, total time 0.047204, content type: text/html; charset=iso-8859-1
clients/inst_productsources.rb:500 Server response: $["code":404, "content-type":"text/html; charset=iso-8859-1", "dsize":1046.0, "totaltime":0.047204]

We might evaluate the respose code better, but ... well, the error is, that
such file does not exist at the server, but it should. Reassigning.
Comment 14 Dominique Leuenberger 2015-10-16 07:07:08 UTC
(In reply to Lukas Ocilka from comment #13)
> I've just reproduced the issue.
> 
> Control file for Leap 42.1 contains:
> 
> <software>
> <external_sources_link>http://download.opensuse.org/YaST/Repos/openSUSE_42.
> 1_Servers.xml</external_sources_link>
> </software>

https://github.com/yast/skelcd-control-openSUSE/blob/openSUSE-42_1/control/control.openSUSE.xml#L131 begs to differ...

The repo was first added here https://github.com/yast/skelcd-control-openSUSE/commit/b0d0deb22882ac3823dd1faecd86690ffc981903 and there is no indication that this ever was wrong.