Как использовать значение переменной окружения в другом имени и значении переменной окружения, используя dotenv? - PullRequest
1 голос
/ 01 апреля 2020

Для моей среды тестирования я использую dotenv для чтения и инициализации переменных среды для различных сред тестирования. Теперь я хочу использовать указанное значение переменной среды c как часть значения и имя других переменных среды.

Итак, я установил env var export INSTANCE=1 перед инициализацией файла env с помощью dotenv.

Это мой файл env со всеми переменными env, которые я хочу инициализировать с помощью dotenv:

# INSTANCE as part of env var value
MY_DOMAIN="http://mypage/"$INSTANCE""

# INSTANCE as part of env var name
SUBDOMAIN"$INSTANCE"="/mysubdomain"

И этот показатель c также не работает:

# INSTANCE as part of env var value
MY_DOMAIN=http://mypage/${INSTANCE}

# INSTANCE as part of env var name
SUBDOMAIN${INSTANCE}=/mysubdomain

Это возможно сделать через bash с

export MY_DOMAIN="http://mypage/"$INSTANCE"" SUBDOMAIN"$INSTANCE"="/mysubdomain"

echo $MY_DOMAIN
http://mypage/1

echo $SUBDOMAIN1
/mysubdomain

Но использование dotenv не работает для меня. У меня есть следующий код:

const dotenv = require("dotenv");
var result = dotenv.config({ path: '/path/to/my/env/file' });

console.log(result.parsed);

console.log дает следующий результат:

{
  MY_DOMAIN:'http://mypage/"$INSTANCE"'
}

Таким образом, env var INSTANCE не может использоваться, значение будет игнорируются. Есть ли решение, чтобы решить мою проблему?

1 Ответ

0 голосов
/ 01 апреля 2020

Я нашел решение, используя dotenv-expand :)

...