summaryrefslogtreecommitdiff
path: root/sysvinit/freebsd/cloudconfig
diff options
context:
space:
mode:
authorJoshua Harlow <harlowja@yahoo-inc.com>2014-01-17 10:40:14 -0800
committerJoshua Harlow <harlowja@yahoo-inc.com>2014-01-17 10:40:14 -0800
commit0f217e3983c79593ea56824256f3504b83f20a83 (patch)
treeb1c31f777834258311ba640fd0f4955e9f6ef755 /sysvinit/freebsd/cloudconfig
parent98fd17c55b637f4e1d136c954567c1d9b23e6c20 (diff)
downloadcloud-init-git-0f217e3983c79593ea56824256f3504b83f20a83.tar.gz
Add freebsd rc.d/sysvinit scripts
Diffstat (limited to 'sysvinit/freebsd/cloudconfig')
-rwxr-xr-xsysvinit/freebsd/cloudconfig34
1 files changed, 34 insertions, 0 deletions
diff --git a/sysvinit/freebsd/cloudconfig b/sysvinit/freebsd/cloudconfig
new file mode 100755
index 00000000..978c32b8
--- /dev/null
+++ b/sysvinit/freebsd/cloudconfig
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+# PROVIDE: cloudconfig
+# REQUIRE: cloudinit cloudinitlocal
+# BEFORE: cloudfinal
+
+. /etc/rc.subr
+
+name="cloudconfig"
+command="/usr/bin/cloud-init"
+start_cmd="cloudconfig_start"
+stop_cmd=":"
+rcvar="cloudinit_enable"
+start_precmd="cloudinit_override"
+start_cmd="cloudconfig_start"
+
+: ${cloudinit_config}:="/etc/cloud/cloud.cfg"}
+
+
+cloudinit_override()
+{
+ # If there exist sysconfig/default variable override files use it...
+ if [ -f /etc/default/cloud-init ]; then
+ . /etc/default/cloud-init
+ fi
+}
+
+cloudconfig_start() {
+ echo "${command} starting"
+ ${command} ${cloudinit_config} modules --mode config
+}
+
+load_rc_config $name
+run_rc_command "$1"