aboutsummaryrefslogtreecommitdiff
path: root/sysutils/rubygem-chef/files/chef_client.in
diff options
context:
space:
mode:
Diffstat (limited to 'sysutils/rubygem-chef/files/chef_client.in')
-rw-r--r--sysutils/rubygem-chef/files/chef_client.in48
1 files changed, 48 insertions, 0 deletions
diff --git a/sysutils/rubygem-chef/files/chef_client.in b/sysutils/rubygem-chef/files/chef_client.in
new file mode 100644
index 000000000000..2991fa131b14
--- /dev/null
+++ b/sysutils/rubygem-chef/files/chef_client.in
@@ -0,0 +1,48 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: chef_client
+# REQUIRE: DAEMON
+# BEFORE: LOGIN
+# KEYWORD: shutdown
+
+# Add the following line to /etc/rc.conf to enable chef-client
+#
+# chef_client_enable="YES"
+
+. %%RC_SUBR%%
+
+name="chef_client"
+rcvar=`set_rcvar`
+
+# Read configuration and set defaults
+load_rc_config $name
+: ${chef_client_enable="NO"}
+: ${chef_client_configfile="%%PREFIX%%/etc/chef/client.rb"}
+: ${chef_client_interval="600"}
+: ${chef_client_splay="0"}
+: ${chef_client_logfile="/var/log/chef-client.log"}
+: ${chef_client_loglevel="info"}
+
+if [ -n "$chef_client_nodename" ]
+ then
+ nodename="-N ${chef_client_nodename}"
+ else
+ nodename=""
+fi
+
+if [ -n "$chef_client_server" ]
+ then
+ server="-N ${chef_client_server}"
+ else
+ server=""
+fi
+
+command="%%PREFIX%%/bin/chef-client"
+command_interpreter="%%RUBY%%"
+chef_client_flags="-c ${chef_client_configfile} ${nodename}${server}-d -i ${chef_client_interval} -s ${chef_client_splay} -L ${chef_client_logfile} -l ${chef_client_loglevel}"
+
+load_rc_config $name
+run_rc_command "$1"