Skip to content
elixir in AWS scaffold
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
config first Dec 6, 2016
LICENSE Fix markdown error Apr 4, 2017 changed TODO Dec 6, 2016


This is code is not production ready, many kinks to be worked out. Contributors welcome.

Deploy apps to AWS Lambda

ensure you have distillery installed and a web server insecure testing example:

  defp deps do
      {:distillery, "~> 0.10"},
      {:http_server, git: ""}

Ensure the web server starts

  def application do
    [applications: [:logger,:http_server]]

Ensure latest awscli via sudo pip install --upgrade awscli

Get distillery configured via mix release.init

Initilize Exlam mix exlam.init

Edit deploy/config.exs and deploy/deploy.yaml with correct values and then package your app mix exlam.package

Run the deployer for your first deploy, this creates AWS resources you will be billed for.

mix exlam.deploy -cli

To update your functionrun:

mix exlam.package;mix exlam.uf

configure role and deployer policy

working policy,

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1480632540000", "Effect": "Allow", "Action": [ "cloudformation:CreateChangeSet" ], "Resource": [ "*" ] } ] }


configure with codebuild enable non-current env ERTS libs via distillery support umbrella apps configurable web server flag and optionally remove erl_crash.dump files to reduce size of


If available in Hex, the package can be installed as:

  1. Add exlam to your list of dependencies in mix.exs:
def deps do
  [{:exlam, "~> 0.1.0"}]
You can’t perform that action at this time.