I'm trying to wrap my head around use cases of SST...
# sst
s
I'm trying to wrap my head around use cases of SST and Serverless Framework. It appears that they are complimentary, given the example on serverless-stack of deploying the back-end infrastructure as an SST app and the API as a serverless app. However, it's not clear to me when one would choose to develop an SST app versus using Serverless (or vice versa). I'm asking the question because I've built an app using Serverless and would love to try out the SST live lambda development environment. At this point, it seems like an either/or proposition, but I'm not sure I've got the proper mental model of how these tools work.
p
For my part, I was also intrigued by the live lambda dev-mode, and I'm currently using to manage/deploy a few lambdas for me. I chose the trickiest ones first, since that's where I get the most value out of the live dev model. For the ones I move to SST, I remove them from Serverless. I can then live develop using
yarn sst start
, and when I'm done, I run
yarn sst deploy
which will replace the sst-live-coding-stub from AWS and place my 'normal' Lambda in place. It's obviously only usable in a dev environment (unless I'm missing something), but it's very powerful and quite ingenious IMHO! So, from my extensive experience (~48 hours), it can definitively be complementary, but it also seems likely I will migrate everything over to SST/CDK given more time (maybe over the next weeks/months).
s
Thank you for describing your experience. I am excited to give SST a try, but I wasn't sure I understood how all this fit together. I think I'll do what you've done and try SST on one of my existing lambdas currently in Serverless Framework. The live development feature looks awesome!
p
Yeah. I first did a simple hello-world lambda to make sure it was all running ok in a fresh setting. Once that worked, I tried replacing one from my main project. Always good to know things are working in the clean setup first. 🙂
j
Yeah so the backstory on this is that we intended SST to be complimentary (hence the bad messaging). But when we started playing around with the Live Lambda Development idea, it became clear that this is how we'd want to build serverless apps. However, all our production services are in Serverless Framework and similar to you guys moving over isn't super straightforward. Over the next week we are going to roll out some basic higher level constructs that can improve the developer experience. And then focus on figuring out a migration path.
Btw, feel free to give us any feedback. Critical or otherwise, it really helps.
p
Yeah, I think the messaging/positioning is something that needs more work. It reads like an extra feature to sls, but feels more like a path to cdk. (btw, maybe this same approach could be done with an sls plugin as well?) I keep notes on my migration path to sst which I'd be happy to share in its basic&rough shape if you'd like @Jay?
s
Right, I think my confusion was centered around the branding. Serverless Framework and Serverless Stack Toolkit are independent tools that make serverless development easier. But SST is not related to the Serverless Framework
j
@Pål Brattberg yeah that would help. I'd love to see how you end up migrating a service. And then we can figure out if we can build any tooling to help or maybe just have good docs for it.
@Seth Geoghegan okay that feedback helps. I'll be taking a crack at the readme and docs for the next release to try and address this.
Thanks guys!
s
Ehh, naming is hard. 😆 Excited to give SST a whirl. My current development cycle involves a lot of
sls invoke local...
, but SST looks like an improvement on that. Very exciting, keep up the good work!
j
Thank you!