Как безсерверный знает, где найти serverless.yml? - PullRequest
2 голосов
/ 23 апреля 2019

Как локальный пакет npm / yarn, добавленный локально в проект, знает, где найти файл serverless.yml?Я пытаюсь найти точный фрагмент кода в исходном коде бессерверного фреймворка (https://github.com/serverless/serverless),, где это происходит, но пока мне не повезло. Мне нужно это знать, потому что мои

* 1004Команда *

не похоже на новые изменения, которые я сделал в файле serverless.yml. Она продолжает выбирать старые.

1 Ответ

2 голосов
/ 23 апреля 2019

Это код, используемый Serverless для загрузки конфигурации:

https://github.com/serverless/serverless/blob/master/lib/utils/getServerlessConfigFile.js#L9

Соответствующая выдержка:

  const servicePath = srvcPath || process.cwd();
  const jsonPath = path.join(servicePath, 'serverless.json');
  const ymlPath = path.join(servicePath, 'serverless.yml');
  const yamlPath = path.join(servicePath, 'serverless.yaml');
  const jsPath = path.join(servicePath, 'serverless.js');

  return BbPromise.props({
    json: fileExists(jsonPath),
    yml: fileExists(ymlPath),
    yaml: fileExists(yamlPath),
    js: fileExists(jsPath),
  }).then(exists => {

Обратите внимание, что из CLI servicePathустановлен в текущий рабочий каталог.

Глядя на код, я предполагаю, что у вас может быть serverless.json, который имеет приоритет над serverless.yaml?Команда serverless print покажет вашу разрешенную конфигурацию.(https://serverless.com/framework/docs/providers/aws/cli-reference/print/#print)

...