lamlight is a python package for serverless application. It abstracts out all the steps needed to develop a servless application for AWS lambda. It cuts down 90% of time for deploying/updating AWS lambda.
Faster, better and robust delivery is becoming crucial. This is where microservices and serverless apps shine. Along, with the huge advantage of using microservices there are some limitation that cloud platforms like AWS applies. Lamlight is made to solve these issues for all developers out there. You just need to write the code and leave everything else on Lamlight.
The problems/issues focused on:
- Putting large size dependencies on aws lambda(will be for other platforms also soon): AWS lambda imposes a limit of 250 MB on code/dependencies size. So, How to use large dependencies like numpy, pandas, scipy on aws lambda? Simple, use Lamlight. Lamlight compresses the package to its extent and allows you put the dependencies of size of almost 600 MBs.
- One click deployment: Lamlight works like GIT for you. Just connect with a lambda function once and push the code everytime with a single command.
- Updating existing code: Checking the existing code deployed on AWS lambda function is very useful for debbuging and making quick patches. Lamlight made it very simple for you.
- push to multiple places: Code you have worked on can be very easily pushed to differnt AWS lambdas, Just connect with a new AWS lambda function you want(similar to changing the remote in GIT) and push.
- Creating boilerplate for AWS lambda function.
- Live upading existing AWS lambda function.
- Connecting existing project to AWS lambda function.
- Cache build package
- Single command to push code to lambda function.
- python 2.7
- pip
- Add your aws credentials in
~/.aws/credentials
or if you are using IAM roles then setAWS_REGION
for default AWS region
- Install the Package
pip install git+https://github.com/Rohit25negi/lamlight
- Create lamlight project
lamlight create \ --lambda_name demo_lambda \ --role arn:aws:iam::<accountid>:role/<role_name>\ --subnet_id subnet-<subnet_id>\ --security_group sg-<sg_id>
- Push the code to lambda
lamlight push
- Connect with existing AWS lambda function
~$ cd my_project
my_project/$ lamlight connect --lambda_name my_lambda
my_project/$ lamlight push