mirror of
https://github.com/coolsnowwolf/packages.git
synced 2025-05-02 04:09:17 +08:00
49 lines
1.2 KiB
Bash
49 lines
1.2 KiB
Bash
#!/bin/sh /etc/rc.common
|
|
# Copyright (C) 2023 ImmortalWrt.org
|
|
|
|
START=99
|
|
USE_PROCD=1
|
|
|
|
CONF="ddns-go"
|
|
YAML="/etc/$CONF/config.yaml"
|
|
PROG="/usr/bin/$CONF"
|
|
|
|
start_service() {
|
|
config_load "$CONF"
|
|
|
|
local enabled
|
|
config_get_bool enabled "config" "enabled" "0"
|
|
[ "$enabled" -eq "1" ] || return 1
|
|
|
|
local listen ttl dns noweb insecure
|
|
config_get listen "config" "listen" "[::]:9876"
|
|
config_get ttl "config" "ttl" "300"
|
|
config_get dns "config" "dns"
|
|
config_get_bool noweb "config" "noweb" "0"
|
|
config_get_bool insecure "config" "insecure" "0"
|
|
|
|
[ -d "${YAML%/*}" ] || mkdir -p "${YAML%/*}"
|
|
touch "$YAML"
|
|
chown ddns-go "${YAML%/*}"
|
|
chown ddns-go "$YAML"
|
|
|
|
procd_open_instance "$CONF"
|
|
procd_set_param command "$PROG"
|
|
procd_append_param command -c "$YAML"
|
|
procd_append_param command -l "$listen"
|
|
procd_append_param command -f "$ttl"
|
|
[ -z "$dns" ] || procd_append_param command -dns "$dns"
|
|
[ "$noweb" -eq "0" ] || procd_append_param command -noweb
|
|
[ "$insecure" -eq "0" ] || procd_append_param command -skipVerify
|
|
|
|
procd_set_param respawn
|
|
procd_set_param stderr 1
|
|
procd_set_param user ddns-go
|
|
|
|
procd_close_instance
|
|
}
|
|
|
|
service_triggers() {
|
|
procd_add_reload_trigger "$CONF"
|
|
}
|