[kubic-bugs] [Bug 1153687] New: Zypper repo name detection broken
http://bugzilla.suse.com/show_bug.cgi?id=1153687 Bug ID: 1153687 Summary: Zypper repo name detection broken Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Kubic Assignee: kubic-bugs@opensuse.org Reporter: fvogt@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- zypper ar obs://some:where/ results in a URL such as https://download.opensuse.org/repositories/some:/where/openSUSE-MicroOS-2019... -- You are receiving this mail because: You are the assignee for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1153687
Thorsten Kukuk
http://bugzilla.suse.com/show_bug.cgi?id=1153687
http://bugzilla.suse.com/show_bug.cgi?id=1153687#c2
Fabian Vogt
What's wrong with it?
MicroOS and Kubic use Tumbleweed repos.
root@fibonacci:~ (3) $ zypper ar obs://some:where/ xxx Guessed: platform = openSUSE_Leap_$releasever ... https://download.opensuse.org/repositories/some:/where/openSUSE_Leap_15.1
The 'Guessed platform' depends on your installed product. If the projects has no repo set up for it, you need to manually pass one that fits for you:
[man zypper] These URIs have the form of obs://project/[platform], where project is the name of the OBS project and platform is the target platform (OS) for which the repository is intended.
If platform is omitted, openSUSE_$releasever is used unless a value for obs.platform is defined in zypper.conf. ... Ok, the man page should state that it's actually guessed based on your product (/etc/proucts.d/baseproduct).. I'll fix that.
Then this has to be adjusted in the MicroOS product file. -- You are receiving this mail because: You are the assignee for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1153687
Fabian Vogt
http://bugzilla.suse.com/show_bug.cgi?id=1153687
http://bugzilla.suse.com/show_bug.cgi?id=1153687#c3
Fabian Vogt
(In reply to Michael Andres from comment #1)
[man zypper] These URIs have the form of obs://project/[platform], where project is the name of the OBS project and platform is the target platform (OS) for which the repository is intended.
If platform is omitted, openSUSE_$releasever is used unless a value for obs.platform is defined in zypper.conf. ... Ok, the man page should state that it's actually guessed based on your product (/etc/proucts.d/baseproduct).. I'll fix that.
Then this has to be adjusted in the MicroOS product file.
Not that easy actually: platform = pdata.name().asString(); if ( platform == "openSUSE" && str::containsCI( pdata.summary(), "Tumbleweed" ) ) platform += "_Tumbleweed"; else platform += "_$releasever"; So we'd have to change the summary to "openSUSE MicroOS based on Tumbleweed" or something like that. Or zypper changes its detection mechanism to also include MicroOS. Or zypper introduces a conf.d directory where the MicroOS product package could set obs.platform in. Any ideas? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1153687
http://bugzilla.suse.com/show_bug.cgi?id=1153687#c4
Richard Brown
(In reply to Fabian Vogt from comment #2)
(In reply to Michael Andres from comment #1)
[man zypper] These URIs have the form of obs://project/[platform], where project is the name of the OBS project and platform is the target platform (OS) for which the repository is intended.
If platform is omitted, openSUSE_$releasever is used unless a value for obs.platform is defined in zypper.conf. ... Ok, the man page should state that it's actually guessed based on your product (/etc/proucts.d/baseproduct).. I'll fix that.
Then this has to be adjusted in the MicroOS product file.
Not that easy actually:
platform = pdata.name().asString(); if ( platform == "openSUSE" && str::containsCI( pdata.summary(), "Tumbleweed" ) ) platform += "_Tumbleweed"; else platform += "_$releasever";
So we'd have to change the summary to "openSUSE MicroOS based on Tumbleweed" or something like that.
This would not be compatible with the directions I was given when originally setting up MicroOS. We want MicroOS to be identifiable as a discreet offering from the codebase its based on, to surpress the tendency of an unhindered ever-broadening scope that comes with Tumbleweed
Or zypper changes its detection mechanism to also include MicroOS. Or zypper introduces a conf.d directory where the MicroOS product package could set obs.platform in.
Any ideas?
I'd prefer either of these two ideas which are more compatible with how we want MicroOS to be. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1153687
http://bugzilla.suse.com/show_bug.cgi?id=1153687#c5
Michael Andres
http://bugzilla.suse.com/show_bug.cgi?id=1153687
http://bugzilla.suse.com/show_bug.cgi?id=1153687#c6
--- Comment #6 from Fabian Vogt
If we need product specific values, we should introduce a tag for it in the .prod file. This is where the data come from (it's not sufficient that the -release package is installed, it needs to the the baseproduct).
Zypper could prefer the value of <obsplatform> or something similar.
Then the special condition for "Tumbleweed" in zypper wouldn't be necessary anymore either. Who controls the specification of that file? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1153687
http://bugzilla.suse.com/show_bug.cgi?id=1153687#c7
--- Comment #7 from Michael Andres
Who controls the specification of that file?
AFAIK Adrian. He should at leask know who. -- You are receiving this mail because: You are on the CC list for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c12
Michael Andres
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c13
Fabian Vogt
Zypper-1.14.43 will use openSUSE_Tumbleweed if product name is MicroOS and vendor is openSUSE. This should fix it for now.
Reopoen or ping me in case OBS actually implements something like Fabian suggested.
Reopening, but sadly not because it got implemented in OBS... I installed Kubic recently and used zypper ar with obs://, but it failed: f241:~ # zypper ar obs://devel:kubic dk Guessed: platform = MicroOS_$releasever Adding repository 'dk' ......................................................................................................................................................................................................................[done] Repository 'dk' successfully added URI : https://download.opensuse.org/repositories/devel:/kubic/MicroOS_20210408 f241:~ # rpm -q zypper zypper-1.14.43-1.2.x86_64 -- You are receiving this mail because: You are on the CC list for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c14
--- Comment #14 from Michael Andres
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c19
--- Comment #19 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c20
--- Comment #20 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c23
--- Comment #23 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c27
--- Comment #27 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1153687
https://bugzilla.suse.com/show_bug.cgi?id=1153687#c28
--- Comment #28 from Swamp Workflow Management
participants (2)
-
bugzilla_noreply@novell.com
-
bugzilla_noreply@suse.com