In practice, all the serverless guys I've seen have a pre-CI pre-VCS pre-UAT kind of workflow using the AWS console where there's no change control or ability to collaborate.
In practice, all the serverless guys I've seen have a pre-CI pre-VCS pre-UAT kind of workflow using the AWS console where there's no change control or ability to collaborate.
* Dev: develop inside Docker container identical to Lambda environment https://github.com/lambci/docker-lambda
* CI: test via Jenkins/GoCD/Travis/CircleCI, inside docker
* Staging: deploy to staging host on merge
* UAT: against staging env, break build if any user-facing tests fail
* Prod: deploy exact same package we deployed to Staging
Disclaimer: I work for AWS
https://hackernoon.com/yubls-road-to-serverless-part-2-testi...
AWS also offers some of these pieces fully integrated via CodeDeploy (which we do not ourselves use).
Teams that have (only fairly recently) discovered AWS lets them escape the snail's pace of getting something into production within Enterprise IT, their little walled garden that IT has siloed them into (for their own good). They just absolutely love Node + Lambda because servers are scary (they tend not to have CLI skills to even CD / LS around the VFS) and it lets them get things done -- which is all their superiors value.
Places where IT doesn't value time to market, and nobody values maintenance or costs (we regularly have products owned by failing to apply patches to products using OSS, we rack up AWS bills by leaving manually created test resources around for months or ramping up products like Lambda to the moon for a batch job then forgetting to turn it back down once it finishes).