blob: 73a7f4a3999bbbd971694b3e50bc81f1221b7c60 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#!/bin/bash
declare -a csr_files
if [ -n "$1" ]; then
csr_files+=("/var/lib/uacme.d/$1/$1.csr")
else
readarray -d '' csr_files < <(find /var/lib/uacme.d -name "*.csr" -print0)
fi
export UACME_CHALLENGE_PATH="{{ uacme_challenge_webroot_path | default('/var/run/acme/acme-challenge') }}"
failed=0
for csr_file in "${csr_files[@]}"; do
id=$(basename -s .csr "$csr_file")
uacme -c /var/lib/uacme.d -a "{{ uacme_directory_server }}" -h /usr/share/uacme/uacme.sh -n issue "$csr_file"
case $? in
0)
echo "$id successfully (re)issued."
awk '{if(length($0) > 0) print} /-----END CERTIFICATE-----/ { exit }' "/var/lib/uacme.d/$id/$id-cert.pem" > "/var/lib/uacme.d/$id/crt.pem"
awk '(show==1) {if(length($0) > 0) print} /-----END CERTIFICATE-----/ { show=1 }' "/var/lib/uacme.d/$id/$id-cert.pem" > "/var/lib/uacme.d/$id/chain.pem"
## TODO: reload services
;;
1)
echo "$id not updated."
;;
*)
failed=1
;;
esac
done
exit $failed
|