forked from 0k/0k-charms
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
708 B
25 lines
708 B
|
|
|
|
|
|
|
|
yaml_opt_bash_env() {
|
|
local prefix="$1" key value
|
|
while read-0 key value; do
|
|
new_prefix="${prefix}_${key^^}"
|
|
if [[ "$(echo "$value" | shyaml get-type)" == "struct" ]]; then
|
|
echo "$value" | yaml_opt_bash_env "${new_prefix}"
|
|
else
|
|
printf "%s\0%s\0" "${new_prefix/-/_}" "$value"
|
|
fi
|
|
done < <(shyaml key-values-0)
|
|
}
|
|
|
|
yaml_opt_bash_env_ignore_first_level() {
|
|
local prefix="$1" key value
|
|
while read-0 key value; do
|
|
new_prefix="${prefix}_${key^^}"
|
|
if [[ "$(echo "$value" | shyaml get-type)" == "struct" ]]; then
|
|
echo "$value" | yaml_opt_bash_env "${new_prefix}"
|
|
fi
|
|
done < <(shyaml key-values-0)
|
|
}
|