Hello all, I'm using one bundle to make servers grouping. In bundlesequence i have: bundlesequence => { "update", "garbage_collection", "groups", "main" };
groups define server groups: something like: "jboss_server" or => { "10_10_10_1", "10_10_10_2" }; "hadoop_server" or => { "10_10_10_4", "10_10_10_3" }; .. and so on and main contains list of bundles to use for that groups: bundle agent main { methods: any:: "any" usebundle => time_check; "any" usebundle => jdk_install; jboss_server||hadoop_server:: "app_users" usebundle => appusers; jboss_server:: "jboss_server" usebundle => jboss_install; "jboss_server" usebundle => jboss_init_script; "jboss_server" usebundle => install_r; ... and so on. In bundle install_r i have such class, to determine wheter specific package is installed: classes: "forecast" expression => returnszero("/usr/bin/Rscript -e 'packages = installed.packages();rownames(packages)' | /bin/grep -q forecast","useshell"); And in this case on any server that do not belong to jboss_server group it fails because Rscript is not installed ( and it shouldn't ) What is weird for me, is why cfengine tries to execute this command on server it is not supposed to. For instance if i do: classes: jboss_server:: "forecast" expression => returnszero("/usr/bin/Rscript -e 'packages = installed.packages();rownames(packages)' | /bin/grep -q forecast","useshell"); It works perfect - it is executed only on servers from jboss_serever class. Thanks in advance. -- Denis _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine