Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
date title author
2017-09-15 06:05:40 -0700
James Ackman

lambdaBuildBot– A serverless build and deploy bot for site content.

The idea is to have a quick, automated build and deploy tool for an app using an event driven, functional programming-like architecture. What happens is that upon commiting content changes to a project, a remote push/synchronization event acting on the master branch of a GitHub hosted repo triggers this bot to build a project and deploy it for you.

Currently it is configured to use AWS Lambda and deploy to an S3 bucket, but since the main code is all standard nodejs javascript, one could presumably configure a version compatible with other cloud services (Microsoft Azure, Google, IBM Openwhisk, etc). Installation pulls in woola to use as the javascript markdown/html build tool.


Have node/npm installed on your local machine then:

npm install

Local testing

For testing on your local machine, node-lambda is a useful dependency for development. Just follow its directions for making a .env file in your lambdaBuildBot directory and set up keys/values for AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, GITHUB_ACCESS_TOKEN, as well as LOCAL_DIR (LOCAL_DIR=./tmp).

Deploy to AWS

  1. Get an AWS account setup and S3 bucket configured (see Amazon documentation).
  2. Get a github access token.
  3. Use the AWS web console to create a lambda function with the name lambdaBuildBot.
    • set the function up with at least 1024 MB memory so it will run fastest (cpu speed is tied to memory request requirement for lambda).
    • set up environment variables for GITHUB_ACCESS_TOKEN and LOCAL_DIR=/tmp.
  4. Update the function... if you make a file called '' with the following contents in your lambdaBuildBot directory and you have aws-cli installed then you can just run npm deploy:
awsRegion='' #'us-west-2'
awsAccountNumber='' #'xxxxxxxxxxxx'
zip -r $ index.js node_modules
aws lambda update-function-code \
--function-name arn:aws:lambda:$awsRegion:$awsAccountNumber:function:$fname \
--zip-file fileb://$filepath/$

MIT License


A 'serverless' AWS Lambda build and deploy bot for static web content





No releases published


No packages published