-
Type:
Bug
-
Status: Resolved (View Workflow)
-
Priority:
Major
-
Resolution: Done
-
Affects Version/s: 0.9.8, 0.10.0
-
Fix Version/s: 0.10.3
-
Component/s: Operating system plugins
-
Environment:
Fedora 16 with x86_64 arch, boxgrinder v0.10.0, prepared to make a custom vmware appliance (based on centos 6)
-
Steps to Reproduce:
-
Bugzilla Update:Perform
My custom appliance need this rpm package: compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
I noted this rpm in appl as "compat-libstdc++-33".
However, boxgrinder always notify me that it could not find this package:
FATAL – : RuntimeError: Package compat-libstdc++-33 for test-vmware appliance not found in repositories. Please check package names in appliance definition file.
I went through the source code, and found one string-matching condition is quite strange:
"invalid_names" function in "boxgrinder-build-0.9.8/lib/boxgrinder-build/plugins/os/rpm-based/rpm-dependency-validator.rb"
if package.size > 0 and name.match( /^#
{package.gsub(/[\+]/, '\\+')}/ )
found = true
end
when "compat-libstdc+-33", the package value = "compat-libstdc-33", the same. But this regex matching rule will delete '' in package, makes name and package not matched.
I think it is a bug on handling package name matching.
can we make the package name matching not so strict as now?
If other strange rpm name comes, still will cause new bugs.
If you have any comments, please let me know.
Thanks & Best wishes,
Henry