A collection of buildpacks to build images of elixir projects
erlang-runtimeelixir-runtimemix-releasedownload project dependencies and create an Elixir Releaseelixirmeta buildpack that define the order in which buildpack run
In addition rg.nl-ams.scw.cloud/carlo-colombo/elixir-builder is a builder based on ubuntu:bionic including the 4 buildpacks.
This stack support org.cloudfoundry.stacks.cflinuxfs3 (cloudfoundry/cnb:cflinuxfs3) and io.github.carlo-colombo.elixir-builder
To create a release from an umbrella application run from the root of the application defining the release to build with the RELEASE env variable
pack build dashboard \
--path . \
--builder rg.nl-ams.scw.cloud/carlo-colombo/elixir-builder \
-e RELEASE=dashboard -e SECRET_KEY_BASE=asdadasdasdNote: is not supported to build individual release from the app folder, as in app dependency and configuration would be outside of the directory passed to pack.
- It at least partially support
phoenix, it requires to pass inSECRET_KEY_BASEas environment variable. For example
pack build dashboard \
--path . \
--builder rg.nl-ams.scw.cloud/carlo-colombo/elixir-builder \
-e DEBUG=1 \
-e SECRET_KEY_BASE="$(mix phx.gen.secret)"pack build <elixir project image> \
--path <elixir project> \
--builder rg.nl-ams.scw.cloud/carlo-colombo/elixir-builderpack build <elixir project image> \
--path <elixir project> \
--buildpack ./elixir/ \
-b ./elixir-runtime/ \
-b ./erlang-runtime/ \
-b ./mix-release/ \
--builder rg.nl-ams.scw.cloud/carlo-colombo/elixir-buildercd elixir-builder
./build.shIt create an image on the local docker named rg.nl-ams.scw.cloud/carlo-colombo/elixir-builder