Difference between revisions of "Bundle common g"
(New page: This is <pre> ############################################################################### # # Webhuis common role backup_recovery for a single host # # Copyright (C) 2008 Martin Si...) |
|||
| Line 1: | Line 1: | ||
| + | The file promises.cf contains the bundle g, among other things. It simply does not work if the bundle is placed in a separate file, because the daemons seem not to be able to handle such a situation.<br/> |
||
| − | This is |
||
| + | Dynamic CFEngine3 requires some sort of wildcard select, this is done by using find in an execresult. |
||
<pre> |
<pre> |
||
############################################################################### |
############################################################################### |
||
# |
# |
||
| − | # Webhuis common |
+ | # Webhuis bundle common g |
# |
# |
||
# Copyright (C) 2008 Martin Simons, Webhuis. Renkum The Netherlands |
# Copyright (C) 2008 Martin Simons, Webhuis. Renkum The Netherlands |
||
| Line 10: | Line 11: | ||
# |
# |
||
############################################################################### |
############################################################################### |
||
| + | bundle common g { |
||
| + | vars: |
||
| + | "acl" slist => { "10.*" }; |
||
| + | "workdir" string => "/var/cfengine"; |
||
| + | "master_location" string => "/var/cfengine/masterfiles"; |
||
| + | "master_roles" string => "/var/cfengine/webhuis/roles"; |
||
| + | "master_templates" string => "/var/cfengine/webhuis/templates"; |
||
| + | "master_domain" string => "/var/cfengine/webhuis/domains"; |
||
| + | "master_host" string => "/var/cfengine/webhuis/hosts"; |
||
| + | "master_components" string => "/var/cfengine/webhuis/components"; |
||
| + | "master_packages" string => "/var/cfengine/webhuis/packages"; |
||
| + | "dir_bin" string => "/var/cfengine/bin"; |
||
| + | "dir_modules" string => "/var/cfengine/bin"; |
||
| + | "inputfiles" string => "/var/cfengine/inputs"; |
||
| + | "policyhost" string => "cfengine.webhuis.nl"; |
||
| + | "class_domain" string => canonify("$(sys.domain)"); |
||
| + | "class_host" string => canonify("$(sys.uqhost)"); |
||
| + | "role" string => "${role.role}"; |
||
| + | |||
| + | "etc_exports" string => "/etc/exports"; |
||
| + | "exports_ro" string => "(ro,sync,root_squash,no_subtree_check)"; |
||
| + | "exports_rw" string => "(rw,sync,root_squash,no_subtree_check)"; |
||
| + | "nfs_ro" string => "ro,soft,intr,noatime,nodiratime 0 0"; |
||
| + | "nfs_rw" string => "rw,soft,intr,noatime,nodiratime 0 0"; |
||
| + | "os_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs/os/ -name '*.cf'","noshell"),"\n","99"); |
||
| + | "common_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs/webhuis-common/ -name '*.cf'","noshell"),"\n","99"); |
||
| + | "host_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs-webhuis/ -name '*.cf'","noshell"),"\n","99"); |
||
| + | "component_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs-webhuis/components/ -name '*.cf'","noshell"),"\n","99"); |
||
| + | "component_master" slist => maplist("/var/cfengine/webhuis/components/$(this)", "${role.role}.input"); |
||
| + | "host" string => "${sys.uqhost}"; |
||
| + | "ip_address" string => "${sys.ipv4[$(sys.interface)]}"; |
||
| + | |||
| + | } |
||
</pre> |
</pre> |
||
<hr> |
<hr> |
||
Latest revision as of 14:35, 18 May 2014
The file promises.cf contains the bundle g, among other things. It simply does not work if the bundle is placed in a separate file, because the daemons seem not to be able to handle such a situation.
Dynamic CFEngine3 requires some sort of wildcard select, this is done by using find in an execresult.
###############################################################################
#
# Webhuis bundle common g
#
# Copyright (C) 2008 Martin Simons, Webhuis. Renkum The Netherlands
# This source code is licensed under the GNU General Public License, Version 2.
# See http://webhuis.nl/GPL-license for more details.
#
###############################################################################
bundle common g {
vars:
"acl" slist => { "10.*" };
"workdir" string => "/var/cfengine";
"master_location" string => "/var/cfengine/masterfiles";
"master_roles" string => "/var/cfengine/webhuis/roles";
"master_templates" string => "/var/cfengine/webhuis/templates";
"master_domain" string => "/var/cfengine/webhuis/domains";
"master_host" string => "/var/cfengine/webhuis/hosts";
"master_components" string => "/var/cfengine/webhuis/components";
"master_packages" string => "/var/cfengine/webhuis/packages";
"dir_bin" string => "/var/cfengine/bin";
"dir_modules" string => "/var/cfengine/bin";
"inputfiles" string => "/var/cfengine/inputs";
"policyhost" string => "cfengine.webhuis.nl";
"class_domain" string => canonify("$(sys.domain)");
"class_host" string => canonify("$(sys.uqhost)");
"role" string => "${role.role}";
"etc_exports" string => "/etc/exports";
"exports_ro" string => "(ro,sync,root_squash,no_subtree_check)";
"exports_rw" string => "(rw,sync,root_squash,no_subtree_check)";
"nfs_ro" string => "ro,soft,intr,noatime,nodiratime 0 0";
"nfs_rw" string => "rw,soft,intr,noatime,nodiratime 0 0";
"os_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs/os/ -name '*.cf'","noshell"),"\n","99");
"common_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs/webhuis-common/ -name '*.cf'","noshell"),"\n","99");
"host_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs-webhuis/ -name '*.cf'","noshell"),"\n","99");
"component_inputs" slist => splitstring(execresult("/usr/bin/find ${workdir}/inputs-webhuis/components/ -name '*.cf'","noshell"),"\n","99");
"component_master" slist => maplist("/var/cfengine/webhuis/components/$(this)", "${role.role}.input");
"host" string => "${sys.uqhost}";
"ip_address" string => "${sys.ipv4[$(sys.interface)]}";
}
Return to: Dynamic_Cfengine3