onlyoffice-docserver/prep.d/20-rand-keys.sh

19 lines
573 B
Bash
Executable File

#!/bin/sh
set -euo pipefail
# Initialize random passwords if needed
if ! vault kv list [[ .vault.prefix ]]kv/service 2>/dev/null | grep -q -E '^[[ .oo.instance ]]$'; then
vault kv put [[ .vault.prefix ]]kv/service/[[ .oo.instance ]] \
secret_key=$(pwgen -s -n 50 1) \
link_secret=$(pwgen -s -n 50 1)
fi
for PWD in secret_key link_secret; do
if ! vault kv get -field ${PWD} [[ .vault.prefix ]]kv/service/[[ .oo.instance ]] >/dev/null 2>&1; then
vault kv patch [[ .vault.prefix ]]kv/service/[[ .oo.instance ]] \
${PWD}=$(pwgen -s -n 50 1)
fi
done