#!/usr/bin/env bash while read DOMAIN; do echo "getting certificate for $DOMAIN" CERT=$(kubectl get secret $DOMAIN -o "jsonpath={.data['tls\.crt']}" | base64 --decode | awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}') KEY=$(kubectl get secret $DOMAIN -o "jsonpath={.data['tls\.key']}" | base64 --decode | awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}') echo "Uploading certificate for $DOMAIN" curl -X POST -u 'user:pass' --header "Content-Type: application/json" --header "Accept: application/json" "https://some-api.example.com/api/v1/host/$DOMAIN" -d "{ \"type\": \"string\", \"public_certificates\": \"$CERT\", \"private_key\": \"$KEY\" }" done < secrets.txt