I’m having trouble deploying Phoenix 1.4 to Heroku. I’m not sure how to debug this issue. On my local machine everything is working fine, but I had Elixir 1.7.3 running on Heroku already. The only change I did was upgrade to Phoenix 1.4.
Here’s my buildpack:
erlang_version=21.0
elixir_version=1.7.3
always_rebuild=true
Here’s the log output.
remote: -----> Elixir app detected
remote: -----> Checking Erlang and Elixir versions
remote: Will use the following versions:
remote: * Stack heroku-18
remote: * Erlang 21.0
remote: * Elixir 1.7.3
remote: -----> Will export the following config vars:
remote: * MIX_ENV=prod
remote: -----> Stack changed, will rebuild
remote: -----> Cleaning all cache to force rebuilds
remote: -----> Fetching Erlang 21.0 from https://s3.amazonaws.com/heroku-buildpack-elixir/erlang/cedar-14/OTP-21.0.tar.gz
remote: -----> Installing Erlang 21.0 (changed)
remote:
remote: -----> Fetching Elixir v1.7.3 for OTP 21 from https://repo.hex.pm/builds/elixir/v1.7.3-otp-21.zip
remote: -----> Installing Elixir v1.7.3 (changed)
remote: -----> Installing Hex
remote: * creating /app/.mix/archives/hex-0.18.2
remote: -----> Installing rebar
remote: * creating /app/.mix/rebar
remote: * creating /app/.mix/rebar3
remote: -----> Fetching app dependencies with mix
remote: ** (KeyError) key "SECRET_KEY_BASE" not found in: %{"BINDIR" => "/app/.platform_tools/erlang/erts-10.0/bin", "BUILDPACK_LOG_FILE" => "/dev/null", "DYNO" => "run.5110", "EMU" => "beam", "HOME" => "/app", "LANG" => "en_US.UTF-8", "LC_CTYPE" => "en_US.utf8", "MIX_ENV" => "prod", "OLDPWD" => "/app/tmp/buildpacks/7dbb5567c3a8b869f9516cd869ebf95082d7cf78f12fea9cba8fad1e1923c580f31b53ba792ed7279cc47894e95fe878ef82661603023bf1f6a023e7c7953587", "PATH" => "/app/.platform_tools/erlang/erts-10.0/bin:/app/.platform_tools/erlang/bin:/tmp/build_6e841776721fff2ac35cb2a7eeccda6d/.platform_tools/elixir/bin:/tmp/build_6e841776721fff2ac35cb2a7eeccda6d/.platform_tools/erlang/bin:/usr/local/bin:/usr/bin:/bin:/tmp/codon/vendor/bin", "PROGNAME" => "erl", "PWD" => "/tmp/build_6e841776721fff2ac35cb2a7eeccda6d", "REQUEST_ID" => "42dc35f0-eeac-c6a2-023e-bac04606077b", "ROOTDIR" => "/app/.platform_tools/erlang", "SHLVL" => "2", "SOURCE_VERSION" => "b3bc1311fdd01907d0e16b9b17d5b09ddd6748d1", "STACK" => "heroku-18", "_" => "/tmp/build_6e841776721fff2ac35cb2a7eeccda6d/.platform_tools/elixir/bin/mix"}
remote: (stdlib) :maps.get("SECRET_KEY_BASE", %{"BINDIR" => "/app/.platform_tools/erlang/erts-10.0/bin", "BUILDPACK_LOG_FILE" => "/dev/null", "DYNO" => "run.5110", "EMU" => "beam", "HOME" => "/app", "LANG" => "en_US.UTF-8", "LC_CTYPE" => "en_US.utf8", "MIX_ENV" => "prod", "OLDPWD" => "/app/tmp/buildpacks/7dbb5567c3a8b869f9516cd869ebf95082d7cf78f12fea9cba8fad1e1923c580f31b53ba792ed7279cc47894e95fe878ef82661603023bf1f6a023e7c7953587", "PATH" => "/app/.platform_tools/erlang/erts-10.0/bin:/app/.platform_tools/erlang/bin:/tmp/build_6e841776721fff2ac35cb2a7eeccda6d/.platform_tools/elixir/bin:/tmp/build_6e841776721fff2ac35cb2a7eeccda6d/.platform_tools/erlang/bin:/usr/local/bin:/usr/bin:/bin:/tmp/codon/vendor/bin", "PROGNAME" => "erl", "PWD" => "/tmp/build_6e841776721fff2ac35cb2a7eeccda6d", "REQUEST_ID" => "42dc35f0-eeac-c6a2-023e-bac04606077b", "ROOTDIR" => "/app/.platform_tools/erlang", "SHLVL" => "2", "SOURCE_VERSION" => "b3bc1311fdd01907d0e16b9b17d5b09ddd6748d1", "STACK" => "heroku-18", "_" => "/tmp/build_6e841776721fff2ac35cb2a7eeccda6d/.platform_tools/elixir/bin/mix"})
remote: (stdlib) erl_eval.erl:677: :erl_eval.do_apply/6
remote: (stdlib) erl_eval.erl:885: :erl_eval.expr_list/6
remote: (stdlib) erl_eval.erl:240: :erl_eval.expr/5
remote: (stdlib) erl_eval.erl:232: :erl_eval.expr/5
remote: (stdlib) erl_eval.erl:233: :erl_eval.expr/5
remote: (stdlib) erl_eval.erl:885: :erl_eval.expr_list/6
remote: (stdlib) erl_eval.erl:408: :erl_eval.expr/5
remote: ! Push rejected, failed to compile Elixir app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to obramax.
Any clues?