Search code examples
node.jsserverless-frameworkaws-serverless

How can I get rid of the "Warning: Invalid configuration encountered" in serverless.yml?


Currently I'm trying to breakdown my serverless service into multiple services to get over the cloudFormation resource limit.

My current project structure is as follows:

aws-backend
  functions
    workers
      serverless.yml // workers service
.env.local
.env.dev
serverless.yml // Rest of the functions in here

In my workers service, I'm trying to reference the .env.* files in the root folder using variables.

My issue is when i use the following syntax

${env:SLS_AWS_REGION}

I get a

Error:Cannot resolve serverless.yml: Variables resolution errored with:
 - Cannot resolve variable at "provider.region": Value not found at "env" source

but when I use the following syntax: ${../../env:SLS_AWS_REGION}

It works but I get a warning:

Warning: Invalid configuration encountered
  at 'package.individually': must be boolean
  at 'provider.region': must be equal to one of the allowed values [use-east-1, etc...]

How can I get rid of this error? Am I even using the correct syntax?

Thanks


Solution

  • Essentially, what I had to do was resolve my own env variables manually. I used this link as a reference and the explanation in the dotenv plugin of serverless

    TLDR: If you're using a serverless version beyond serverless>=2.26.0 then you will most likely need to wire up the envs on your own if you want to relocate your env files