ddns-scripts: update_gandi_net: improve logging & add timeout
[feed/packages.git] / net / ddns-scripts / Makefile
index c481c9379a64e33e9baeab714820b7e3ee467d5e..f5a264e3cb790e0b62701919b621c47309102702 100644 (file)
@@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ddns-scripts
 PKG_VERSION:=2.8.2
-PKG_RELEASE:=14
+PKG_RELEASE:=30
 
 PKG_LICENSE:=GPL-2.0
 
@@ -50,6 +50,7 @@ endef
 define Package/ddns-scripts-services
   $(call Package/ddns-scripts/Default)
   TITLE:=Common ddns providers
+  PROVIDES:=ddns-scripts_service
 endef
 
 define Package/ddns-scripts-services/description
@@ -61,6 +62,7 @@ define Package/ddns-scripts-cloudflare
   $(call Package/ddns-scripts/Default)
   TITLE:=Extension for cloudflare.com API v4
   DEPENDS:=ddns-scripts +curl
+  PROVIDES:=ddns-scripts_cloudflare.com-v4
 endef
 
 define Package/ddns-scripts-cloudflare/description
@@ -72,6 +74,7 @@ define Package/ddns-scripts-freedns
   $(call Package/ddns-scripts/Default)
   TITLE:=Extension for freedns.42.pl
   DEPENDS:=ddns-scripts +curl
+  PROVIDES:=ddns-scripts_freedns_42_pl
 endef
 
 define Package/ddns-scripts-freedns/description
@@ -83,6 +86,7 @@ define Package/ddns-scripts-godaddy
   $(call Package/ddns-scripts/Default)
   TITLE:=Extension for godaddy.com API v1
   DEPENDS:=ddns-scripts +curl
+  PROVIDES:=ddns-scripts_godaddy.com-v1
 endef
 
 define Package/ddns-scripts-godaddy/description
@@ -94,6 +98,7 @@ define Package/ddns-scripts-digitalocean
   $(call Package/ddns-scripts/Default)
   TITLE:=Extention for digitalocean.com API v2
   DEPENDS:=ddns-scripts +curl
+  PROVIDES:=ddns-scripts_digitalocean.com-v2
 endef
 
 define Package/ddns-scripts-digitalocean/description
@@ -123,17 +128,32 @@ define Package/ddns-scripts-noip
   $(call Package/ddns-scripts/Default)
   TITLE:=Extension for no-ip.com
   DEPENDS:=ddns-scripts
+  PROVIDES:=ddns-scripts_no-ip_com
 endef
 
 define Package/ddns-scripts-noip/description
   Dynamic DNS Client scripts extension for "no-ip.com".
 endef
 
+define Package/ddns-scripts-ns1
+  $(call Package/ddns-scripts/Default)
+  TITLE:=NS1 API
+  DEPENDS:=ddns-scripts +curl
+endef
+
+define Package/ddns-scripts-ns1/description
+  Dynamic DNS Client scripts extension for "ns1.com".
+  It requires:
+  "option username" to be a valid zone for ns1.com
+  "option password" to be a valid API key for ns1.com
+endef
+
 
 define Package/ddns-scripts-nsupdate
   $(call Package/ddns-scripts/Default)
   TITLE:=Extension for using bind nsupdate.
   DEPENDS:=ddns-scripts +bind-client
+  PROVIDES:=ddns-scripts_nsupdate
 endef
 
 define Package/ddns-scripts-nsupdate/description
@@ -151,6 +171,7 @@ define Package/ddns-scripts-route53
   $(call Package/ddns-scripts/Default)
   TITLE:=Extension for route53 API v1
   DEPENDS:=ddns-scripts +curl +openssl-util
+  PROVIDES:=ddns-scripts_route53-v1
 endef
 
 define Package/ddns-scripts-route53/description
@@ -167,6 +188,7 @@ define Package/ddns-scripts-cnkuai
   $(call Package/ddns-scripts/Default)
   TITLE:=CnKuai API
   DEPENDS:=ddns-scripts +curl +giflib-utils
+  PROVIDES:=ddns-scripts_cnkuai_cn
 endef
 
 define Package/ddns-scripts-cnkuai/description
@@ -188,7 +210,7 @@ define Package/ddns-scripts-gandi/description
   Dynamic DNS Client scripts extension for "gandi.net".
   It requires:
   "option username" to be a valid subdomain for gandi.net
-  "option password" to be a valid API key for ganid.net
+  "option password" to be a valid API key for gandi.net
 endef
 
 
@@ -207,6 +229,38 @@ define Package/ddns-scripts-pdns/description
 endef
 
 
+define Package/ddns-scripts-transip
+  $(call Package/ddns-scripts/Default)
+  TITLE:=Extension for TransIP API
+  DEPENDS:=ddns-scripts +curl +openssl-util +!BUSYBOX_CONFIG_MKTEMP:coreutils-mktemp
+endef
+
+define Package/ddns-scripts-transip/description
+  Dynamic DNS Client scripts extension for "transip.nl".
+  Note: You must also install ca-certificate or ca-bundle.
+  It requires:
+  "option username" to be a valid username for transip.nl
+  "option password" to be a valid matching private key
+  "option domain" to contain the base domain
+  "option param_enc" to contain the name of the DNS record to update
+  "option param_opt" to contain the TTL of the DNS record to update
+endef
+
+define Package/ddns-scripts-one
+       $(call Package/ddns-scripts/Default)
+       TITLE:=Extension for one.com Control Panel
+       DEPENDS:=ddns-scripts +curl
+endef
+
+define Package/ddns-scrtips-one/description
+       Dynamic DNS Client scripts extension for "one.com".
+       It requires:
+       "option username" to be a valid Email for one.com Control Panel
+       "option password" to be the matching one.com Control Panel password
+       "option domain" to contain the domain / subdomain
+endef
+
+
 define Build/Configure
 endef
 
@@ -279,6 +333,9 @@ define Package/ddns-scripts-services/install
        rm $(1)/usr/share/ddns/default/cnkuai.cn.json
        rm $(1)/usr/share/ddns/default/gandi.net.json
        rm $(1)/usr/share/ddns/default/pdns.json
+       rm $(1)/usr/share/ddns/default/transip.nl.json
+       rm $(1)/usr/share/ddns/default/ns1.com.json
+       rm $(1)/usr/share/ddns/default/one.com.json
 endef
 
 
@@ -396,6 +453,25 @@ exit 0
 endef
 
 
+define Package/ddns-scripts-ns1/install
+       $(INSTALL_DIR) $(1)/usr/lib/ddns
+       $(INSTALL_BIN) ./files/usr/lib/ddns/update_ns1_com.sh \
+               $(1)/usr/lib/ddns
+
+       $(INSTALL_DIR) $(1)/usr/share/ddns/default
+       $(INSTALL_DATA) ./files/usr/share/ddns/default/ns1.com.json \
+               $(1)/usr/share/ddns/default
+endef
+
+define Package/ddns-scripts-ns1/prerm
+#!/bin/sh
+if [ -z "$${IPKG_INSTROOT}" ]; then
+       /etc/init.d/ddns stop
+fi
+exit 0
+endef
+
+
 define Package/ddns-scripts-nsupdate/install
        $(INSTALL_DIR) $(1)/usr/lib/ddns
        $(INSTALL_BIN) ./files/usr/lib/ddns/update_nsupdate.sh \
@@ -491,6 +567,44 @@ exit 0
 endef
 
 
+define Package/ddns-scripts-transip/install
+       $(INSTALL_DIR) $(1)/usr/lib/ddns
+       $(INSTALL_BIN) ./files/usr/lib/ddns/update_transip_nl.sh \
+               $(1)/usr/lib/ddns
+
+       $(INSTALL_DIR) $(1)/usr/share/ddns/default
+       $(INSTALL_DATA) ./files/usr/share/ddns/default/transip.nl.json \
+               $(1)/usr/share/ddns/default
+endef
+
+define Package/ddns-scripts-transip/prerm
+#!/bin/sh
+if [ -z "$${IPKG_INSTROOT}" ]; then
+       /etc/init.d/ddns stop
+fi
+exit 0
+endef
+
+
+define Package/ddns-scripts-one/install
+       $(INSTALL_DIR) $(1)/usr/lib/ddns
+       $(INSTALL_BIN) ./files/usr/lib/ddns/update_one_com.sh \
+               $(1)/usr/lib/ddns
+
+       $(INSTALL_DIR) $(1)/usr/share/ddns/default
+       $(INSTALL_DATA) ./files/usr/share/ddns/default/one.com.json \
+               $(1)/usr/share/ddns/default
+endef
+
+define Package/ddns-scripts-one/prerm
+#!/bin/sh
+if [-z "${IPKG_INSTROOT}" ]; then
+       /etc/init.d/ddns stop
+fi
+exit 0
+endef
+
+
 $(eval $(call BuildPackage,ddns-scripts))
 $(eval $(call BuildPackage,ddns-scripts-services))
 $(eval $(call BuildPackage,ddns-scripts-cloudflare))
@@ -504,3 +618,6 @@ $(eval $(call BuildPackage,ddns-scripts-route53))
 $(eval $(call BuildPackage,ddns-scripts-cnkuai))
 $(eval $(call BuildPackage,ddns-scripts-gandi))
 $(eval $(call BuildPackage,ddns-scripts-pdns))
+$(eval $(call BuildPackage,ddns-scripts-transip))
+$(eval $(call BuildPackage,ddns-scripts-ns1))
+$(eval $(call BuildPackage,ddns-scripts-one))