Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: Chef Client
-
Labels:None
-
Environment:
Any Debian environment or environment using Debian packages.
Description
The package in question is for the Zabbix monitoring agent (which isn't in a repository, so must be installed from package) and it has an "odd" version number:
$ dpkg-deb -W /tmp/zabbix-agent_1.8.3-2_amd64.deb
zabbix-agent 1:1.8.3-2
This is the regular expression currently used by Chef::Provider::Package::Dpkg to parse this output:
/([a-z\d\-\+]+)\t([\w\d.-]+)/
which results in the version always appearing to be "1" because the colon is not accepted. Since 1 != 1:1.8.3-2, a reinstall happens every time. This can easily be fixed by adding a colon to the list of acceptable characters:
/([a-z\d\-\+]+)\t([\w\d.:-]+)/
^
This bug still seems to exist in the current git version...
https://github.com/eherot/chef/tree/CHEF-1072
Added a colon to the list of allowable characters in a file version string (many Debian packages contain colons in their versions).