Bug #12798
closedzypper module arch and version specification for zypper commands is not correct
Description
The command used by zypper module:
rpm -qa --qf "Name=%{name}\nVersion=%{version}-%{release}\nArchitecture=%{arch}\n"
does not display epoch, which leads to a list of installed packaged without epoch.
So when specifying a version with epoch, install works but always returns an error.
If not specifying it, reporting works well but install will be able to install an exact version.
This needs to be fixed in zypper (and maybe rpm) repos at least.
Updated by Alexis Mousset over 6 years ago
- Project changed from Rudder to 41
- Category changed from Agent to Generic methods - Package Management
- Assignee set to Alexis Mousset
Updated by Alexis Mousset over 6 years ago
- Translation missing: en.field_tag_list set to Sponsored
- User visibility changed from Operational - other Techniques | Technique editor | Rudder settings to Getting started - demo | first install | level 1 Techniques
- Priority changed from 52 to 102
Updated by Alexis Mousset over 6 years ago
- Status changed from New to In progress
Updated by Alexis Mousset over 6 years ago
- Status changed from In progress to Pending technical review
- Assignee changed from Alexis Mousset to Benoît PECCATTE
- Pull Request set to https://github.com/Normation/ncf/pull/777
Updated by Alexis Mousset over 6 years ago
The same bug exists in yum module, but it has less consequences as yum allows installing a given version without epoch.
Updated by Alexis Mousset over 6 years ago
yum requires epoch at the beginning like:
1398866025:rudder-agent-4.1.10.release-1.EL.6.x86_64
So it is hard to fix as we don't want people to be forced to use an epoch, but allow to specify it.
Updated by Alexis Mousset over 6 years ago
- Subject changed from Epoch in software versions is not stored by zypper (and yum?) module, which breaks version detection to Epoch in software versions is not stored by zypper module, which breaks version detection
Updated by Alexis Mousset over 6 years ago
- Related to Bug #12799: Force using epoch when installing a package with zypper added
Updated by Alexis Mousset over 6 years ago
zypper on SLES10 appears to completely ignore epoch...
We will have to handle it differently depending on the zypper version...
Updated by Alexis Mousset over 6 years ago
Actually this is trickier:
zypper can identify a package with a specific version and without the epoch when the package comes from a repository, which is the most common case
# zypper install rudder-agent=4.0.7.release-1.SLES.12 Loading repository data... Reading installed packages... 'rudder-agent=4.0.7.release-1.SLES.12' not found in package names. Trying capabilities. 'rudder-agent = 4.0.7.release-1.SLES.12' is already installed. Resolving package dependencies... Nothing to do.
So if we add epoch to version number, we would break some usecases.
Updated by Alexis Mousset over 6 years ago
- Subject changed from Epoch in software versions is not stored by zypper module, which breaks version detection to zypper module arch and version specification for zypper commands is not correct
Updated by Alexis Mousset over 6 years ago
We have no simple way to handle epoch is version numbers, but it should not be necessary as Rudder makes no version comparisons and delegates it to zypper (which know epoch).
Updated by Rudder Quality Assistant over 6 years ago
- Assignee changed from Benoît PECCATTE to Alexis Mousset
Updated by Alexis Mousset over 6 years ago
- Status changed from Pending technical review to Pending release
Applied in changeset commit:207733396fb0fcd056b228c9f4c6bf856a480ed4.
Updated by Vincent MEMBRÉ over 6 years ago
- Status changed from Pending release to Released
Updated by Alexis Mousset over 2 years ago
- Project changed from 41 to Rudder
- Category changed from Generic methods - Package Management to Generic methods
- Priority changed from 102 to 0