Lambkin was designed as a simple tool for simple tasks. Today, it's difficult to recommend over more functional systems such as Serverless and Apex. Please consider alternatives before getting too involved with Lambkin.
Lambkin is a CLI tool for generating and managing simple functions in AWS Lambda.
Supporting Node.js and Python, Lambkin generates skeleton functions, provides lightweight help for managing dependencies, and does its best to hide the complexity of publishing and running functions in Lambda.
- A valid
~/.aws/credentials
file. eg.
[default]
aws_access_key_id = your_access_key_id
aws_secret_access_key = your_secret_access_key
... or the equivalent environment variables (AWS_ACCESS_KEY_ID
and
AWS_SECRET_ACCESS_KEY
).
- A working
virtualenv
command if you will be writing Lambda functions in Python.
pip install lambkin
lambkin create cool-func
cd cool-func
$EDITOR cool-func.py
lambkin create cool-func --runtime=nodejs
cd cool-func
$EDITOR cool-func.js
$EDITOR requirements.txt
lambkin build
$EDITOR Makefile
lambkin build
lambkin publish --description 'The best function ever.'
lambkin publish --description 'Slow' --timeout=300
lambkin publish --description 'Big' --memory=1024
lambkin run
lambkin schedule --rate='10 minutes'
lambkin unpublish
Python functions get a requirements.txt
file where you can specify
dependencies. They will be installed into your function's virtualenv by
lambkin build
.
For now, Node.js functions just get a Makefile. Nicer, more Node-ish dependency management is planned for the future.