mirror of
https://github.com/zulip/docker-zulip.git
synced 2025-11-15 03:11:28 +00:00
secrets: Use crudini to edit secrets file.
Using an actual tool designed to do this is a lot more robust and fixes some nasty escaping issues involving secrets containing `~` that were reported in #143.
This commit is contained in:
@@ -227,26 +227,14 @@ secretsConfiguration() {
|
|||||||
if [ -z "$SECRET_VAR" ]; then
|
if [ -z "$SECRET_VAR" ]; then
|
||||||
echo "Empty secret for key \"$SECRET_KEY\"."
|
echo "Empty secret for key \"$SECRET_KEY\"."
|
||||||
fi
|
fi
|
||||||
grep -q "$SECRET_KEY" "$DATA_DIR/zulip-secrets.conf"
|
crudini --set "$DATA_DIR/zulip-secrets.conf" "secrets" "${SECRET_KEY}" "${SECRET_VAR}"
|
||||||
if (($? > 0)); then
|
|
||||||
echo "$SECRET_KEY = $SECRET_VAR" >> "$DATA_DIR/zulip-secrets.conf"
|
|
||||||
echo "Secret added for \"$SECRET_KEY\"."
|
|
||||||
else
|
|
||||||
sed -i -r "s~#?$SECRET_KEY[ ]*=.*~$SECRET_KEY = $SECRET_VAR~g" "$DATA_DIR/zulip-secrets.conf"
|
|
||||||
echo "Secret found for \"$SECRET_KEY\"."
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
set -e
|
set -e
|
||||||
unset SECRET_KEY SECRET_VAR key
|
unset SECRET_KEY SECRET_VAR key SECRETS
|
||||||
if [ -e "/etc/zulip/zulip-secrets.conf" ]; then
|
ln -nsf "$DATA_DIR/zulip-secrets.conf" "/etc/zulip/zulip-secrets.conf" || {
|
||||||
rm "/etc/zulip/zulip-secrets.conf"
|
|
||||||
fi
|
|
||||||
echo "Linking secrets from data dir to etc zulip ..."
|
|
||||||
ln -s "$DATA_DIR/zulip-secrets.conf" "/etc/zulip/zulip-secrets.conf" || {
|
|
||||||
echo "Couldn't link existing zulip secrets to etc zulip.";
|
echo "Couldn't link existing zulip secrets to etc zulip.";
|
||||||
exit 1;
|
exit 1;
|
||||||
}
|
}
|
||||||
echo "Linked existing secrets from data dir to etc zulip."
|
|
||||||
echo "Zulip secrets configuration succeeded."
|
echo "Zulip secrets configuration succeeded."
|
||||||
}
|
}
|
||||||
databaseConfiguration() {
|
databaseConfiguration() {
|
||||||
|
|||||||
Reference in New Issue
Block a user