]>
git.proxmox.com Git - mirror_acme.sh.git/blob - deploy/mydevil.sh
3 # MyDevil.net API (2019-02-03)
5 # MyDevil.net already supports automatic Let's Encrypt certificates,
6 # except for wildcard domains.
8 # This script depends on `devil` command that MyDevil.net provides,
9 # which means that it works only on server side.
11 # Author: Marcin Konicki <https://ahwayakchih.neoni.net>
13 ######## Public functions #####################
15 # Usage: mydevil_deploy domain keyfile certfile cafile fullchain
24 _debug _cdomain
"$_cdomain"
26 _debug _ccert
"$_ccert"
28 _debug _cfullchain
"$_cfullchain"
30 if ! _exists
"devil"; then
31 _err
"Could not find 'devil' command."
35 ip
=$
(mydevil_get_ip
"$_cdomain")
37 _err
"Could not find IP for domain $_cdomain."
41 # Delete old certificate first
42 _info
"Removing old certificate for $_cdomain at $ip"
43 devil ssl www del
"$ip" "$_cdomain"
46 _info
"Adding new certificate for $_cdomain at $ip"
47 devil ssl www add
"$ip" "$_cfullchain" "$_ckey" "$_cdomain" ||
return 1
52 #################### Private functions below ##################################
54 # Usage: ip=$(mydevil_get_ip domain.com)
57 devil dns list
"$1" | cut
-w -s -f 3,7 |
grep "^A$(printf '\t')" | cut
-w -s -f 2 ||
return 1