serverless предлагает удобный рабочий процесс для использования переменных как в коде функции времени выполнения, так и в конфигурации AWS для функций Lambda и маршрутизации шлюза API. Это описано на странице http://docs.serverless.com/docs/templates-variables и Как определять переменные СУХИМ способом.
Мне сложно понять, как назначать переменные, когда я тестирую свои лямбда-функции локально с помощью sls function run -s stage
. Функция работает нормально, когда я запускаю тест на Lambda, включив параметр -d
, но без него он не работает, потому что не была назначена необходимая переменная. serverless предоставляет следующие сообщения:
Serverless: WARNING: This variable is not defined: region
Serverless: WARNING: This variable is not defined: appEnv
Я использую переменные DRY, как описано в ссылке 2. Конкретно:
s-переменные-aguldman-useast1.json:
{
"appEnv": "qa"
}
функции / fn1 / s-function.json:
{
...
"environment": {
"NODE_ENV": "${appEnv}"
}
...
}
функции / fn1 / handler.js:
...
var foo = process.env.NODE_ENV;
...
Любой совет?
Спасибо!