Forráskód Böngészése

improve compatibility with FreeBSD
it is related to this bug report: opnsense/plugins#3525

FreeBSD's sed doesn't have the -z option, so empty certificates are delivered to vault when running the script on FreeBSD.

Marek Wester 1 éve
szülő
commit
e0c63d58b2
1 módosított fájl, 4 hozzáadás és 4 törlés
  1. 4 4
      deploy/vault.sh

+ 4 - 4
deploy/vault.sh

@@ -70,10 +70,10 @@ vault_deploy() {
 
 
   # JSON does not allow multiline strings.
   # JSON does not allow multiline strings.
   # So replacing new-lines with "\n" here
   # So replacing new-lines with "\n" here
-  _ckey=$(sed -z 's/\n/\\n/g' <"$2")
-  _ccert=$(sed -z 's/\n/\\n/g' <"$3")
-  _cca=$(sed -z 's/\n/\\n/g' <"$4")
-  _cfullchain=$(sed -z 's/\n/\\n/g' <"$5")
+  _ckey=$(sed -e ':a' -e N -e '$ ! ba' -e 's/\n/\\n/g' <"$2")
+  _ccert=$(sed -e ':a' -e N -e '$ ! ba' -e 's/\n/\\n/g' <"$3")
+  _cca=$(sed -e ':a' -e N -e '$ ! ba' -e 's/\n/\\n/g' <"$4")
+  _cfullchain=$(sed -e ':a' -e N -e '$ ! ba' -e 's/\n/\\n/g' <"$5")
 
 
   export _H1="X-Vault-Token: $VAULT_TOKEN"
   export _H1="X-Vault-Token: $VAULT_TOKEN"