[Bug 1200329] New: zypper does not set $releasever properly
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 Bug ID: 1200329 Summary: zypper does not set $releasever properly Classification: openSUSE Product: openSUSE Distribution Version: Leap 15.4 Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: libzypp Assignee: zypp-maintainers@suse.de Reporter: axel.braun@gmx.de QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- Created attachment 859482 --> http://bugzilla.opensuse.org/attachment.cgi?id=859482&action=edit long description of issue.... Online update of a Leap 15.3 system using: zypper clean zypper --releasever 15.4 ref zypper --releasever 15.4 dup --allow-vendor-change Expected result: System is updated and $releasever is set to 15.4 for future use Actual result: System is updated and $releasever is kept at 15.3! See attached for proof -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 http://bugzilla.opensuse.org/show_bug.cgi?id=1200329#c1 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |axel.braun@gmx.de Flags| |needinfo?(axel.braun@gmx.de | |) --- Comment #1 from Michael Andres <ma@suse.com> --- It does not work that way. --releasever overwrites the variable value for the current command only. The stack is like this: - The default $releasever is derived from the installed product. (/grep '<version>' /etc/products.d/baseproduct) - The default can be overwritten persistently by defining $releasever in /etc/zypp/vars.d (echo '15.4' >/etc/zypp/vars.d/releasever) - Finally --releasever sets the value for a single command only. If the value is '15.3' after the dup, then there is - eitehr a /etc/zypp/vars.d/releasever defining it, - or dup did not update the product. The product still is - or claims to be - 15.3. Check '<version>' /etc/products.d/baseproduct. or call `zypper products`. In you attachment `zypper --releasever 15.4 dup` did not perform any action. If the product (or the openSUSE-release package that installed it) is still old, double check whether all your repositories actually use `$releasever` in their URLs. An easy way to do this is 'zypper --releasever @@@@@@ lr -u'. You should see @@@@@@ instead of the 15.3 in the repo URLs. If you still see '15.3's, then no variable is used in the URL. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 http://bugzilla.opensuse.org/show_bug.cgi?id=1200329#c2 Axel Braun <axel.braun@gmx.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Flags|needinfo?(axel.braun@gmx.de | |) | --- Comment #2 from Axel Braun <axel.braun@gmx.de> --- (In reply to Michael Andres from comment #1)
It does not work that way. --releasever overwrites the variable value for the current command only.
OK...I seem to remember that the value was set correctly after the upgrade from 15.2 to 15.3
The stack is like this:
- The default $releasever is derived from the installed product. (/grep '<version>' /etc/products.d/baseproduct)
- The default can be overwritten persistently by defining $releasever in /etc/zypp/vars.d (echo '15.4' > /etc/zypp/vars.d/releasever)
- Finally --releasever sets the value for a single command only.
I think here we have the problem already: southpole:~ # grep '<version>' /etc/products.d/baseproduct <version>15.4</version> southpole:~ # cat /etc/zypp/vars.d/releasever 15.3 southpole:~ # cat /etc/os-release NAME="openSUSE Leap" VERSION="15.4" ID="opensuse-leap" ID_LIKE="suse opensuse" VERSION_ID="15.4" PRETTY_NAME="openSUSE Leap 15.4" ANSI_COLOR="0;32" CPE_NAME="cpe:/o:opensuse:leap:15.4" BUG_REPORT_URL="https://bugs.opensuse.org" HOME_URL="https://www.opensuse.org/" DOCUMENTATION_URL="https://en.opensuse.org/Portal:Leap" LOGO="distributor-logo-Leap"
If the value is '15.3' after the dup, then there is - eitehr a /etc/zypp/vars.d/releasever defining it, - or dup did not update the product. The product still is - or claims to be - 15.3. Check '<version>' /etc/products.d/baseproduct. or call `zypper products`.
See above, /etc/zypp/vars.d/releasever seems not to be updated
In you attachment `zypper --releasever 15.4 dup` did not perform any action. If the product (or the openSUSE-release package that installed it) is still old, double check whether all your repositories actually use `$releasever` in their URLs.
That is because the dup was already performed before. just to confirm that it worked well
An easy way to do this is 'zypper --releasever @@@@@@ lr -u'. You should see @@@@@@ instead of the 15.3 in the repo URLs. If you still see '15.3's, then no variable is used in the URL.
All repos show the @@@ So, bottomline, the /etc/zypp/vars.d/releasever was not set to 15.4. I think it should with the dup, no? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 http://bugzilla.opensuse.org/show_bug.cgi?id=1200329#c3 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Flags| |needinfo? --- Comment #3 from Michael Andres <ma@suse.com> --- (In reply to Axel Braun from comment #2)
So, bottomline, the /etc/zypp/vars.d/releasever was not set to 15.4. I think it should with the dup, no?
No. /etc/zypp/vars.d is 'userland'. Zypp does not touch this location. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 http://bugzilla.opensuse.org/show_bug.cgi?id=1200329#c4 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FEATURE --- Comment #4 from Michael Andres <ma@suse.com> --- Maybe zypper can hint about repovariables in use and where they are defined. https://github.com/openSUSE/zypper/issues/439 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 Michael Andres <ma@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Flags|needinfo? | -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1200329 http://bugzilla.opensuse.org/show_bug.cgi?id=1200329#c5 --- Comment #5 from Axel Braun <axel.braun@gmx.de> --- (In reply to Michael Andres from comment #3)
(In reply to Axel Braun from comment #2)
So, bottomline, the /etc/zypp/vars.d/releasever was not set to 15.4. I think it should with the dup, no?
No. /etc/zypp/vars.d is 'userland'. Zypp does not touch this location.
I see. I checked a new 15.3 installation, and indeed there is this file missing. So it got somehow in there. Thanks for explanation! -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com