-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Installing multiple stages results in multiple APIs #17
Comments
Unfortunately I have not (yet) documented the design decisions that this tool is based on. They are based on the experience we had with running AWS Lambda based microservice architecture. We started using Lambda service when it was still in its infancy (there were no versioning, aliases and definitely no API Gateway). So some things here might not make that much sense anymore... That said, the way the tool works is that every environment specified in configuration is totally separate instance of AWS Lambda (and API GW too). So if you have defined |
I updated example in README.md to have unique api name in test and production config. |
OK, got you. Thanks for the explanation. |
FYI, I've subsequently created a Leiningen plugin of my own, which handles stages in the way that I outlined above: https://github.com/paulbutcher/lein-lambda Not that I'm suggesting that either approach is "right" or "wrong", you understand - just different. I've included a link to this repository in the readme, as the inspiration. |
Thanks for the info. The way you handle the stages definitely makes sense and is nowadays more official way for handling the stages. I will still think if that could be used in this plugin too. However, I don't want to break the backwards compatibility. So it needs some thinking... |
NP - different approaches are all valid ;-) Might be nice if we could cross-link to each other so that people who are evaluating which to use know about the options? |
I'm not sure whether this is me misunderstanding things (it may well be), but I was expecting that if I had production and test stages defined in my
project.clj
, this would create a single API with two different stages. But what I see instead are two different APIs (with the same name). Am I misunderstanding?To make this concrete, here is the relevant section of my
project.clj
:Running
lein lambda install test
gives me:And then
lein lambda install production
gives me:Sure enough, when I look in the API Gateway web console, I can see that I have two APIs, both called "RotaApi".
Is this intended?
The text was updated successfully, but these errors were encountered: