#!/usr/bin/env fish set --local to_provision $( join -v1 \ (awk ' /^[a-z]/ { gsub(/,/, ""); gsub(/ {/, ""); gsub(/[[:space:]]+/, "\n"); if ($1 !~ /fly\.dev/) { print } } ' Caddyfile | sort | psub) \ (fly certs list --json | fx @.hostname list | sort | psub) ) if set --query to_provision[1] echo "Setup required for hostnames: $to_provision" echo for name in $to_provision if test -z (kdig +short TXT _fly-ownership.$name) fly certs add $name fly certs remove --acme --yes $name else echo Add the hostname to DNS, then run echo fly certs add $name echo fly certs remove --acme --yes $name end echo end end