2023-09-24 16:16:22 +00:00
|
|
|
#
|
|
|
|
#
|
|
|
|
#
|
|
|
|
|
|
|
|
body perms uperm(user,group,mode)
|
|
|
|
{
|
|
|
|
mode => "$(mode)";
|
|
|
|
rxdirs => "false";
|
|
|
|
groups => { "$(group)" };
|
2023-10-06 16:51:31 +00:00
|
|
|
owners => { "$(user)" };
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
# wmdelib.cf
|
|
|
|
#
|
|
|
|
|
|
|
|
bundle agent wmde_install_packages(pkgs,name)
|
|
|
|
{
|
|
|
|
packages:
|
|
|
|
freebsd::
|
|
|
|
"$(pkgs)"
|
|
|
|
policy => "present",
|
|
|
|
package_module => pkg,
|
2023-10-06 17:42:23 +00:00
|
|
|
handle => "$(name)_pkgs_installed",
|
|
|
|
classes => results("namespace","$(name)");
|
2023-10-06 16:51:31 +00:00
|
|
|
debian::
|
|
|
|
"$(pkgs)"
|
|
|
|
policy => "present",
|
|
|
|
package_module => apt_get,
|
2023-10-06 17:42:23 +00:00
|
|
|
handle => "$(name)_pkgs_installed",
|
|
|
|
classes => results("namespace","$(name)");
|
|
|
|
|
2023-10-06 16:51:31 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
body perms wmde_perms(user,group,mode)
|
|
|
|
{
|
|
|
|
owners => { "$(user)" };
|
|
|
|
groups => { "$(group)" };
|
|
|
|
mode => "$(mode)";
|
|
|
|
rxdirs=>"false";
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bundle agent wmde_srv(service_name,cmd)
|
|
|
|
{
|
|
|
|
|
|
|
|
classes:
|
|
|
|
"start" expression => strcmp("start","$(cmd)");
|
|
|
|
"restart" expression => strcmp("restart",cmd);
|
|
|
|
|
|
|
|
|
|
|
|
commands:
|
|
|
|
freebsd::
|
|
|
|
"/bin/sh"
|
|
|
|
args => "-c '/usr/sbin/service $(service_name) onestatus > /dev/null && echo +$(service_name)_running || echo -$(service_name)_running'",
|
|
|
|
inform => "false",
|
|
|
|
module => "true",
|
|
|
|
handle => "$(service_name)_status_tested";
|
|
|
|
|
|
|
|
"!$(service_name)_running&start"::
|
|
|
|
"/bin/sh"
|
|
|
|
args => "-c '/usr/sbin/service $(service_name) onestart 2> /dev/null > /dev/null && echo +$(service_name)_started || echo -$(service_name)_started'",
|
|
|
|
module => "true",
|
|
|
|
depends_on => {"$(service_name)_status_tested"};
|
|
|
|
|
|
|
|
"!$(service_name)_running&restart"::
|
|
|
|
"/bin/sh"
|
|
|
|
args => "-c '/usr/sbin/service $(service_name) onerestart 2> /dev/null > /dev/null && echo +$(service_name)_started || echo -$(service_name)_started'",
|
|
|
|
module => "true",
|
|
|
|
depends_on => {"$(service_name)_status_tested"};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
reports:
|
|
|
|
start::
|
|
|
|
# "MUST START";
|
|
|
|
!start::
|
|
|
|
# "MUST NOT START";
|
|
|
|
|
|
|
|
# running::
|
|
|
|
# "Server $(service_name) - running";
|
|
|
|
# !running::
|
|
|
|
# "Server $(service_name) - not running";
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
body service_method wmde
|
|
|
|
{
|
|
|
|
service_type => "generic";
|
|
|
|
service_bundle => wmde_srv ($(this.promiser), $(this.service_policy));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bundle agent wmde_service(service_name,start_cond, restart_cond)
|
|
|
|
{
|
|
|
|
services:
|
|
|
|
"$(start_cond)"::
|
|
|
|
"$(service_name)"
|
|
|
|
service_policy => "start";
|
|
|
|
|
|
|
|
"$(restart_cond)"::
|
|
|
|
"$(service_name)"
|
|
|
|
service_policy => "restart";
|
|
|
|
reports:
|
2023-09-24 16:16:22 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
2023-10-11 09:26:47 +00:00
|
|
|
body contain wmde_cmd_useshell
|
|
|
|
{
|
|
|
|
useshell=>"useshell";
|
|
|
|
}
|
2023-09-24 16:16:22 +00:00
|
|
|
|
2023-10-17 06:50:04 +00:00
|
|
|
|
|
|
|
|
|
|
|
bundle agent download_and_untar(
|
|
|
|
name,
|
|
|
|
sync_src,
|
|
|
|
sync_dst,
|
|
|
|
install_dir,
|
|
|
|
test_file
|
|
|
|
)
|
|
|
|
{
|
|
|
|
classes:
|
|
|
|
"$(name)_untar" expression => not(fileexists("$(test_file)"));
|
|
|
|
|
|
|
|
files:
|
|
|
|
"$(sync_dst)"
|
|
|
|
copy_from => sync_cp("$(sync_src)","$(sys.policy_hub)"),
|
|
|
|
handle => "$(name)_tgz_copied",
|
|
|
|
classes => if_repaired ("$(name)_untar"),
|
|
|
|
perms => m(644);
|
|
|
|
|
|
|
|
commands:
|
|
|
|
|
|
|
|
"$(name)_untar"::
|
|
|
|
"/usr/bin/tar"
|
|
|
|
args => "xzvf $(sync_dst) -C $(install_dir)",
|
|
|
|
depends_on => {"$(name)_tgz_copied"},
|
|
|
|
handle => "$(name)_untarred";
|
|
|
|
reports:
|
|
|
|
# "TESTFILE: $(test_file)";
|
|
|
|
|
|
|
|
}
|
|
|
|
|