[Bug 1029775] New: systemd-presets-branding: Versioning inconsistency between openSUSE and SLE
http://bugzilla.suse.com/show_bug.cgi?id=1029775 Bug ID: 1029775 Summary: systemd-presets-branding: Versioning inconsistency between openSUSE and SLE Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Basesystem Assignee: lnussel@suse.com Reporter: sbrabec@suse.com QA Contact: qa-bugs@suse.de CC: fbui@suse.com, meissner@suse.com Blocks: 1012850 Found By: --- Blocker: --- While creating unified util-linux.spec that can be used for Tumbleweed, Leap and SLE, I found a versioning problem that makes impossible to require or conflict correct version of systemd-presets-branding symbol: systemd-presets-branding-SLE has version 12.1 in SLE 12 SP3. systemd-presets-branding-openSUSE has version 0.3 in Leap 42.3. systemd-presets-branding-openSUSE has version 0.4 in Tumbleweed. All three packages export symbol systemd-presets-branding = %{version} This versioning is not usable. Now I am going to add uuidd to both Leap and SLE. It requires version increment for branding package and conflict in util-linux package. We have to make branding versioning consistent between SLE and openSUSE. And we have to use numbers > 12.1. Maybe all branding packages should use: Version: %{suse_version} or Version: %{suse_version}.1
From systemd-presets-branding-SLE:
Wed Feb 12 16:35:33 UTC 2014 - meissner@suse.com - bump version to match product This versioning change was never done in systemd-presets-branding-SLE. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c1 --- Comment #1 from Stanislav Brabec <sbrabec@suse.com> --- In my particular case, move of uuidd to systemd-presets-branding, I could use: Conflicts: systemd-presets-branding-SLE < 1315 SLE12 SP3: systemd-presets-branding-SLE-1315 Leap 42.3: systemd-presets-branding-openSUSE-1315 openSUSE Tumbleweed: systemd-presets-branding-openSUSE-1330 But next time we will need a similar version dependency, %{suse_version} scheme will not help, because Tumbleweed would require <= 1330, but SP3/Leap 42.3 <= 1315. => This versioning scheme does not look wise. Probably perform one time bump to version 13 (or 12.3) for all branding packages. And starting with that, synchronize versions across all branding names. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c2 --- Comment #2 from Ludwig Nussel <lnussel@suse.com> --- Why is the conflict needed? I thought the branding-preset-states tool is meant to apply presets no matter whether the package is installed first or later? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c3 --- Comment #3 from Stanislav Brabec <sbrabec@suse.com> --- Well, with the new branding-preset-states, conflict is no more needed for each new service introduced. But versioning is still required, especially for online updates, as correct work of package depends on new version of preset. And for special case of preset migration, conflict is really needed. I think, that the easiest what we can do, is setting all Tumbleweed, SLE12 SP3, Leap 42.3 either to 12.1.1 or 12.2 or 12.3 or 13, so util-linux upgrade will go correctly. Later, we always have to keep Leap and SLE branding packages in sync to make possible Requires: in packages that does not need %if %{is_opensuse}. But for migration of preset from one file to another, it is important. Imagine that the order is not correct: A) Migration of preset file from one package to another, wrong order: step 1: Preset disappears from the old file. branding-preset-states detect that and force disables it step 2: Preset appears in the new file. branding-preset-states detect that and force enables it => After upgrade that did not change preset value, the service is force-enabled. It is wrong. In correct order, we get: step 1: Preset appears in the new file. branding-preset-states detect no active change step 2: Preset disappears from the old file. branding-preset-states detect no active change => No force preset is performed, service is kept in previous state. B) Introduction of new service with new preset Wrong order: step 1: New service is installed. Standard %service_add_post calls preset, and preset and sets its initial state to disabled. step 2: Preset appears in the new version of branding. branding-preset-states detect that and force enables it => Service is broken until correct version of presets is installed. Small pain of two calls of preset instead one is acceptable. => Requires is required, but Conflicts is better. Correct order: step 1: Preset appears in the new version of branding. no service of such name => no task for branding-preset-states step 2: New service is installed. Standard %service_add_post calls preset, and preset and sets its initial state to enabled. => Perfect! Fri Feb 10 09:46:22 UTC 2017 - fbui@suse.com - Enable by default uuidd shipped by util-linux (bsc#1012850) util-linux was previously shipping a preset file enabling uuidd by default. This is now done here as other packages are not supposed to ship their own preset rules. Also increase the package version so util-linux can conflict with the previous versions and hence will be updated *after* the new version of the presets package is. This is important otherwise if util-linux removed its preset file first, then the presets package would believe a new change in the presets and you enable again uuidd. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c4 --- Comment #4 from Ludwig Nussel <lnussel@suse.com> --- Ideally the presets package should come from Factory in 42.3 so the package version would be the same as in Factory (e.g 84.87). There should be no migration of presets from one package to the other in the first place as packages are not meant to ship presets. Maybe we need to introduce an rpmlint check to enforce that. util-linux is a rather special case here IMO. What would be the worst that could happen without the conflicts here? An installed uuidd that the admin disabled would be re-enabled again. In my naiveness I'd say I can live with that since uuidd is not installed by default. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c5 --- Comment #5 from Stanislav Brabec <sbrabec@suse.com> --- Force activation of uuidd is relatively minor issue, but something that should not happen. Yes, Factory could have the same package as Leap 42.3, as long as we don't intentionally decide to diverge. SLE has a different package, but version should be the same. Having SLE and Leap in sync is important, so we could use: systemd-presets-branding-*: Add preset enable foo.service and increase version from n to n+1 package foo: Conflicts: systemd-presets-branding < n+1 or Requires: systemd-presets-branding >= n If we not sync, we have to use: package foo: %if 0%{?is_opensuse} Conflicts: systemd-presets-branding-openSUSE < n+1 %else Conflicts: systemd-presets-branding-SLE < s+1 %endif or %if 0%{?is_opensuse} Requires: systemd-presets-branding-openSUSE >= n %else Requires: systemd-presets-branding-SLE >= s %endif -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c6 Stanislav Brabec <sbrabec@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |IN_PROGRESS --- Comment #6 from Stanislav Brabec <sbrabec@suse.com> --- Submitted: http://build.opensuse.org/request/show/480879 I will submit util-linux with this version dependency to Factory. It could be accepted to Leap 42.3 and SLE 12 SP3 as well. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c8 --- Comment #8 from Bernhard Wiedemann <bwiedemann@suse.com> --- This is an autogenerated message for OBS integration: This bug (1029775) was mentioned in https://build.opensuse.org/request/show/481214 Factory / systemd-presets-branding-openSUSE -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c9 --- Comment #9 from Bernhard Wiedemann <bwiedemann@suse.com> --- This is an autogenerated message for OBS integration: This bug (1029775) was mentioned in https://build.opensuse.org/request/show/481768 Factory / systemd-presets-branding-openSUSE -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c10 Thorsten Kukuk <kukuk@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kukuk@suse.com --- Comment #10 from Thorsten Kukuk <kukuk@suse.com> --- This change broke CaaSP/Kubic. If you make changes/new requires to systemd-presets-branding packages, you should adjust at least ALL packages in FACTORY! -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=1029775 http://bugzilla.suse.com/show_bug.cgi?id=1029775#c11 --- Comment #11 from Bernhard Wiedemann <bwiedemann@suse.com> --- This is an autogenerated message for OBS integration: This bug (1029775) was mentioned in https://build.opensuse.org/request/show/492447 Factory / systemd-presets-branding-CAASP -- You are receiving this mail because: You are on the CC list for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1029775 https://bugzilla.suse.com/show_bug.cgi?id=1029775#c13 Stanislav Brabec <sbrabec@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|IN_PROGRESS |RESOLVED Resolution|--- |FIXED --- Comment #13 from Stanislav Brabec <sbrabec@suse.com> --- It was fixed long time ago. -- You are receiving this mail because: You are on the CC list for the bug.
participants (2)
-
bugzilla_noreply@novell.com
-
bugzilla_noreply@suse.com