initial commit
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
|
||||
# AI generated
|
||||
urlencode() {
|
||||
local LANG=C i x
|
||||
for (( i = 0; i < ${#1}; i++ )); do
|
||||
x="${1:i:1}"
|
||||
[[ "$x" =~ [a-zA-Z0-9.~_-] ]] && echo -n "$x" || printf '%%%02X' "'$x"
|
||||
done
|
||||
echo
|
||||
}
|
||||
|
||||
if [[ ! -z ${CURL_CONFIG_IDS} ]]; then
|
||||
mkdir -p ${CURL_CONFIG_DIR:-/opt/etc/curl}
|
||||
|
||||
for CURL_CONFIG_PAIR in ${CURL_CONFIG_IDS}; do
|
||||
if [[ ${CURL_CONFIG_PAIR} =~ ^([^:]+):(.+)$ ]]; then
|
||||
CURL_CONFIG_ID=${BASH_REMATCH[0]}
|
||||
CURL_CONFIG_ENVVAR_KEY=${BASH_REMATCH[1]}
|
||||
CURL_CONFIG_ENVVAR_USERNAME="CURL_CONFIG_${CURL_CONFIG_ENVVAR_KEY}_USERNAME"
|
||||
CURL_CONFIG_ENVVAR_PASSWORD="CURL_CONFIG_${CURL_CONFIG_ENVVAR_KEY}_PASSWORD"
|
||||
|
||||
CURL_CONFIG_USERNAME=`urlencode ${!CURL_CONFIG_ENVVAR_USERNAME}`
|
||||
CURL_CONFIG_PASSWORD=`urlencode ${!CURL_CONFIG_ENVVAR_PASSWORD}`
|
||||
|
||||
if [[ -z ${CURL_CONFIG_USERNAME} ]]; then
|
||||
echo "The curl configuration '${CURL_CONFIG_ID}' has no corresponding environment variable: ${CURL_CONFIG_ENVVAR_USERNAME}; ignoring"
|
||||
elif [[ -z ${CURL_CONFIG_PASSWORD} ]]; then
|
||||
echo "The curl configuration '${CURL_CONFIG_ID}' has no corresponding environment variable: ${CURL_CONFIG_ENVVAR_PASSWORD}; ignoring"
|
||||
else
|
||||
CURL_CONFIG_FILE=${CURL_CONFIG_DIR:-/opt/etc/curl}/${CURL_CONFIG_ID}.cfg
|
||||
echo "user = ${CURL_CONFIG_USERNAME}:${CURL_CONFIG_PASSWORD}" > ${CURL_CONFIG_FILE}
|
||||
|
||||
echo "Added CURL configuration file: ${CURL_CONFIG_FILE}"
|
||||
fi
|
||||
else
|
||||
echo "The curl configuration format in 'CURL_CONFIG_IDS' is invalid: ${CURL_CONFIG_PAIR}"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
fi
|
||||
Reference in New Issue
Block a user