Erlang buildpack
Clone or download
joedevivo Merge pull request #16 from heroku/jd-release-upgrade-env-check
Fix if condition for $RELEASE_UPGRADE
Latest commit 50a8c9d Aug 16, 2016
Failed to load latest commit information.
bin Fix if condition for $RELEASE_UPGRADE Aug 16, 2016
opt Updating gof3r, don't check md5 Jan 14, 2016 Merge pull request #8 from dizzyd/patch-1 Jun 10, 2015

Heroku buildpack: Erlang

This is a Heroku buildpack for Erlang apps. It uses Rebar or Rebar3.

Which build tool to use is automatically detected. Rebar is currently the default. If either rebar3 or rebar.lock are present, Rebar3 will be used.

Configure your Heroku App

$ heroku config:add BUILDPACK_URL="" -a YOUR_APP


$ heroku create --buildpack ""

Select an Erlang version

The Erlang/OTP release version that will be used to build and run your application is now sourced from a dotfile called .preferred_otp_version. It needs to be the branch or tag name from the repository, and further, needs to be one of the versions that precompiled binaries are available for.

When you fail to specify the version, the version marked with a * will be used. this may vary per stack.

Currently supported OTP versions (please note that cedar will receive no more updates):


  • OTP_R15B02
  • OTP_R16B03-1
  • OTP-17.3.4
  • OTP-17.4
  • OTP-17.4.1
  • OTP-17.5.1 *
  • OTP-18.0-rc1


  • OTP_R15B
  • OTP_R15B01
  • OTP_R15B02
  • OTP_R16B
  • OTP_R16B01
  • OTP_R16B02
  • OTP_R16B03
  • OTP_R16B03-1
  • OTP-17.0
  • OTP-17.1
  • OTP-17.2
  • OTP-17.3 *

Please let us know ( if you'd like some other version supported. We'll attempt to keep up to date with the official releases.

To select the version for your app:

$ echo OTP-17.5.1 > .preferred_otp_version
$ git commit -m "Select 17.5.1 as preferred OTP version" .preferred_otp_version

Build your Heroku App

$ git push heroku master

You may need to write a new commit and push if your code was already up to date.

NOTE: You need to have either an ebin/ directory or rebar.config checked into Git in order for Heroku to identify this project as an Erlang app it can build.