localstack / serverless-localstack

⚡ Serverless plugin for running against LocalStack
511 stars 82 forks source link

Protocol now required when using `custom.localstack.host` #257

Open bram-tv opened 4 days ago

bram-tv commented 4 days ago

Description

Since serverless-loaclstack v1.2.1 it appears that the protocol needs to be included in the custom.localstack.host property. In older versions it appears this was not required.

Configuration

In our serverless configuration we had something similar to:

custom:
  localstack:
    host: ${env:SOME_VAR, '127.0.0.1'}

i.e. without the protocol (http://).

serverless-localstack v1.2.0:

Using this with:

The debug output shows:

Reconfiguring service acm to use http://127.0.0.1:4566
Reconfiguring service amplify to use http://127.0.0.1:4566
Reconfiguring service apigateway to use http://127.0.0.1:4566

serverless-localstack v1.2.1:

Using this with:

The debug output shows:

Reconfiguring service acm to use 127.0.0.1://127.0.0.1:4566
Reconfiguring service amplify to use 127.0.0.1://127.0.0.1:4566
Reconfiguring service apigateway to use 127.0.0.1://127.0.0.1:4566

which then results in errors such as:

aws: [1] { UnknownEndpoint: Inaccessible host: `127.0.0.1' at port `443'. This service may not be available .....

Additional information

In the documentation the example does include the protocol when setting the custom.localstack.host so I suppose it can also be seen as a configuration error on our end.. but in that case a clearer error message might be useful.

I'm also guessing the change in behavior is caused by #243