https://issues.rudder.io/https://issues.rudder.io/themes/rudder7/favicon/favicon.ico?17096450182019-04-03T14:03:48ZIssue TrackerRudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1061192019-04-03T14:03:48ZFrançois ARMANDfrancois.armand@rudder.io
<ul></ul><p>So it seems to be because "vim" is not a package per se, it's a virtual package. So rudder agent try to find it, doesn't not find it, try to install it, succeed (well, it's already there), and try again to find it, and still doesn't find it.</p>
<p>There is no good solution to make that better, because yum is not able to answer "is vim installed?" properly.</p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1063652019-04-11T10:45:38ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Target version</strong> changed from <i>5.0.9</i> to <i>5.0.10</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1068452019-04-15T08:28:37ZFrançois ARMANDfrancois.armand@rudder.io
<ul><li><strong>Subject</strong> changed from <i>Package present generic method reports error but package is installed</i> to <i>For virtual package, package present generic method reports error but package is installed</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1068582019-04-15T08:35:07ZFrançois ARMANDfrancois.armand@rudder.io
<ul><li><strong>Severity</strong> changed from <i>Major - prevents use of part of Rudder | no simple workaround</i> to <i>Minor - inconvenience | misleading | easy workaround</i></li><li><strong>Effort required</strong> set to <i>Very Small</i></li><li><strong>Priority</strong> changed from <i>70</i> to <i>79</i></li></ul><p>So the problem is actually hard and goes like that:</p>
<p>- I asked for `vim<br />- `vim` is a virtual package<br />- cfengine code looks in "rpm <del>qa" list and doesn't find it. It ask distrib package manager to correct that. <br /></del> package manager tries to install it: it automatically chooses default virtual package for vim, say `vim-minimal`<br />- installation success!<br />- cfengine code looks again in "rpm -qa" but still doesn't find it: oh noes! Unknow error!</p>
<p>We don't have any simple mean to know what the package manager chose to install.</p>
<p>So the correct solution is to change report so that the user has a least a way to know where to look. Perhaps adding something like:</p>
<pre>
If you tried to install a virtual package, please use in place the concrete package you want to isntall.
</pre> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1070712019-04-15T12:42:31ZFrançois ARMANDfrancois.armand@rudder.io
<ul><li><strong>Assignee</strong> set to <i>Alexis Mousset</i></li><li><strong>Effort required</strong> changed from <i>Very Small</i> to <i>Small</i></li><li><strong>Priority</strong> changed from <i>79</i> to <i>66</i></li></ul><p>It's still a C patch in cfengine :/</p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1082972019-05-13T14:05:08ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Target version</strong> changed from <i>5.0.10</i> to <i>5.0.11</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1089002019-05-20T15:15:13ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Target version</strong> changed from <i>5.0.11</i> to <i>5.0.12</i></li><li><strong>Priority</strong> changed from <i>66</i> to <i>65</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1099512019-06-20T15:39:41ZFélix DALLIDET
<ul><li><strong>Priority</strong> changed from <i>65</i> to <i>64</i></li></ul><p>It is possible to make yum take virtual package into account without touching any cfengine C source code.<br />We are now only using the cfengine packages modules, and the yum one is in python.</p>
<p>We could make the module check in rpm -q (which is currently the case) but also check in the rpm local database via:<br /><pre>
[root@server packages]# rpm -q --whatprovides vim
vim-enhanced-7.4.160-5.el7.x86_64
</pre></p>
<p>This should work and should not be too much work.<br />Still, this would also state that doing a "package absent" on a virtual package will remove all packages providing it, which may not be what we want.</p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1099522019-06-20T16:21:35ZFélix DALLIDET
<ul></ul><p>Edit: Since cfengine does not let us pass args when listing installed packages, listing all virtual packages and their versions + arch (which is retrieved from their providers) will be too slow <br />to be usable.<br />Going back to the warning message.</p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1099532019-06-21T08:30:19ZFélix DALLIDET
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>In progress</i></li><li><strong>Assignee</strong> changed from <i>Alexis Mousset</i> to <i>Félix DALLIDET</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1099542019-06-21T08:33:12ZFélix DALLIDET
<ul><li><strong>Status</strong> changed from <i>In progress</i> to <i>Pending technical review</i></li><li><strong>Assignee</strong> changed from <i>Félix DALLIDET</i> to <i>Nicolas CHARLES</i></li><li><strong>Pull Request</strong> set to <i>https://github.com/Normation/ncf/pull/990</i></li></ul><p>PR <a class="external" href="https://github.com/Normation/ncf/pull/990">https://github.com/Normation/ncf/pull/990</a></p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1099572019-06-21T12:20:48ZFélix DALLIDET
<ul><li><strong>Status</strong> changed from <i>Pending technical review</i> to <i>Pending release</i></li></ul><p>Applied in changeset commit:99cc8b47575a2f382ae6a367e8e41c1318d6e879.</p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1099942019-06-24T11:09:42ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Name check</strong> set to <i>To do</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1100722019-06-24T11:10:23ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Fix check</strong> set to <i>To do</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1102612019-06-25T09:41:13ZAlexis Moussetalexis.mousset@rudder.io
<ul><li><strong>Name check</strong> changed from <i>To do</i> to <i>Needs change</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1103212019-06-25T12:28:55ZAlexis Moussetalexis.mousset@rudder.io
<ul><li><strong>Subject</strong> changed from <i>For virtual package, package present generic method reports error but package is installed</i> to <i>Improve package management error reporting to suggest avoiding virtual packages</i></li><li><strong>Name check</strong> changed from <i>Needs change</i> to <i>Reviewed</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1103602019-06-25T14:16:10ZAlexis Moussetalexis.mousset@rudder.io
<ul><li><strong>Fix check</strong> changed from <i>To do</i> to <i>Error - Blocking</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1104542019-06-27T11:41:37ZFrançois ARMANDfrancois.armand@rudder.io
<ul><li><strong>Fix check</strong> changed from <i>Error - Blocking</i> to <i>Checked</i></li></ul><p>The warning correctly appear on an interactive run. Given that the use case is not that common, and that an interactive run display what is expected, I thing the correction is ok.</p>
<pre>
error: Error installing package 'vim'
error: Method 'ncf_package' failed in some repairs
warning packageManagement None vim If you tried to install a virtual package, please use in place the concrete package you want to install.
error: Method 'package_state_options' failed in some repairs
E| error packageManagement Package vim Presence of package vim in any version could not be repaired
</pre>
<p>I'm switching to "ok" for the fix.</p> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1112102019-07-08T10:57:31ZVincent MEMBRÉvme@rudder.io
<ul></ul><p>This bug has been fixed in Rudder 5.0.12 which was released today.</p>
<ul>
<li><a href="https://docs.rudder.io/changelogs/5.0/index.html#5.0.12" class="external">5.0.12 changelog</a></li>
<li><a href="https://docs.rudder.io/reference/5.0/installation/upgrade.html" class="external">Upgrade manual</a></li>
</ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1144382019-09-06T10:30:31ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Related to</strong> <i><a class="issue tracker-1 status-5 priority-16 priority-default closed parent" href="/issues/15149">Bug #15149</a>: package management reporting broken when trying to use latest version and absent state </i> added</li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1151142019-09-20T13:30:35ZVincent MEMBRÉvme@rudder.io
<ul><li><strong>Status</strong> changed from <i>Pending release</i> to <i>Released</i></li><li><strong>Priority</strong> changed from <i>64</i> to <i>61</i></li></ul> Rudder - Bug #14582: Improve package management error reporting to suggest avoiding virtual packageshttps://issues.rudder.io/issues/14582?journal_id=1552362022-05-25T15:01:03ZAlexis Moussetalexis.mousset@rudder.io
<ul><li><strong>Project</strong> changed from <i>41</i> to <i>Rudder</i></li><li><strong>Category</strong> changed from <i>Generic methods - Package Management</i> to <i>Generic methods</i></li><li><strong>Priority</strong> changed from <i>61</i> to <i>56</i></li></ul>