#!/bin/sh
# PROVIDE: gardendevd DEVFS
# BEFORE: machine_identity

. /etc/rc.subr

name=gardendevd
command=/usr/sbin/gardendevd
command_args="-K &"
pidfile=/run/gardendevd.pid
start_postcmd=gardendevd_trigger

gardendevd_trigger()
{
	for attempt in 1 2 3 4 5; do
		/usr/bin/gardendevctl control --ping >/dev/null 2>&1 && break
		/bin/sleep 1
	done
	/usr/bin/gardendevctl control --ping >/dev/null 2>&1 || return 1
	/usr/bin/gardendevctl trigger --type=subsystems --action=add || return $?
	/usr/bin/gardendevctl trigger --type=devices --action=add || return $?
	/usr/bin/gardendevctl settle -t 30
}

run_rc_command "$1"
