我是CFEngine新手,我正在尝试执行一些基于主机名的操作。
所有具有稳定性的主机名都应该包含slist 1中的包所有进行测试的主机名都应该包含slist 2中的包。
bundle agent package_lists {
packages:
stable&dist_class::
"$(user_packages.package_stable)"
package_policy => "add",
package_method => yuck,
classes => if_repaired("package_changed");
}我想把这个改变为包括测试的主机。
增加测试是否足够?我无法理解什么是dist_class::和稳定。
-stable&dist_class:: +test&stable&dist_class::
发布于 2015-02-11 10:22:02
我认为您应该使用OR操作符‘AC.26’,而不是‘&’&‘假设您所指的类代表的是所有三个类都需要相同包安装的服务器组)。使用符号(&)或点(.)将只匹配属于所有三个类的服务器,而不是个人。https://docs.cfengine.com/docs/3.5/manuals-language-concepts-classes.html
如果您希望只匹配同时匹配所有三个类定义的服务器,那么“符号”就是(其中之一)。
就我个人而言,我希望尽可能地保持原子化,所以实际上我会分别为所有三个类定义承诺,或者为公共包创建一个新的类,确保上面的服务器属于这个类。
https://stackoverflow.com/questions/26696246
复制相似问题