Я хочу передать переменное количество свойств ресурсу на основе значений, доступных в атрибутах.
Вот идея того, что я хочу сделать. Если мне нужна логика if c вокруг свойств, я не уверен, возможно ли сделать что-то подобное ...
rpms = [
{
"name": "name",
"version": "version",
"release": "release",
"arch": "arch"
},
{
"name": "name"
}
]
rpms.each do | package_info |
custom_package 'install' + package_info['name'] do
name package_info['name']
if defined?(package_info['version']) # Only pass that property if it is available
version package_info['version']
end
if defined?(package_info['release']) # Only pass that property if it is available
version package_info['release']
end
if defined?(package_info['arch']) # Only pass that property if it is available
version package_info['arch']
end
end
end
Есть ли что-то подобное в Chef?