bitwalker / distillery

Simplify deployments in Elixir with OTP releases!
MIT License
2.97k stars 398 forks source link

undef Distillery.Releases.Config.Provider #712

Open InoMurko opened 5 years ago

InoMurko commented 5 years ago

Steps to reproduce

https://github.com/omisego/elixir-omg or make build-watcher-dev mix do compile, distillery.release dev --name watcher --verbose

Verbose Logs

make start-child_chain
Building Child Chain
Resolving Hex dependencies...
Dependency resolution completed:
Unchanged:
  artificery 0.4.2
  binary 0.0.5
  briefly 0.3.0
  bunt 0.2.0
  certifi 2.5.1
  connection 1.0.4
  cors_plug 2.0.0
  cowboy 1.1.2
  cowlib 1.0.2
  credo 1.0.5
  db_connection 2.1.0
  decimal 1.8.0
  decorator 1.3.0
  dialyxir 1.0.0-rc.6
  distillery 2.1.1
  earmark 1.3.2
  ecto 3.1.5
  ecto_sql 3.1.4
  erlex 0.2.2
  erlexec 1.10.0
  ethereumex 0.5.4
  ex_abi 0.2.1
  ex_doc 0.20.2
  ex_rlp 0.5.2
  exth_crypto 0.1.6
  fake_server 1.5.0
  hackney 1.15.1
  httpoison 1.4.0
  idna 6.0.0
  jason 1.1.2
  keccakf1600_orig 2.0.0
  licensir 0.2.7
  makeup 0.8.0
  makeup_elixir 0.13.0
  merkle_tree 1.6.1
  metrics 1.0.1
  mime 1.3.1
  mimerl 1.2.0
  msgpax 2.2.3
  nimble_parsec 0.5.0
  optimal 0.3.6
  parse_trans 3.3.0
  phoenix 1.4.7
  phoenix_pubsub 1.1.2
  plug 1.8.2
  plug_cowboy 1.0.0
  plug_crypto 1.0.0
  poison 4.0.1
  poolboy 1.5.2
  postgrex 0.14.3
  ranch 1.3.2
  rocksdb 1.3.2
  sentry 7.0.6
  spandex_datadog 0.4.0
  spandex_ecto 0.6.0
  spandex_phoenix 0.4.1
  ssl_verify_fun 1.1.4
  statix 1.2.1
  telemetry 0.4.0
  unicode_util_compat 0.4.1
  vmstats 2.3.1
  websockex 0.4.2
==> Loading configuration..
==> Assembling release..
==> Building release child_chain:0.2.2+1c7e3a6 using environment dev
==> Discovered applications:
  > elixir-1.8.1
  |
  |  from: /Users/inomurko/.asdf/installs/elixir/1.8.1-otp-21/bin/../lib/elixir
  |  applications:
  |      :kernel
  |      :stdlib
  |      :compiler
  |  includes: none
  |_____

  > mix-1.8.1
  |
  |  from: /Users/inomurko/.asdf/installs/elixir/1.8.1-otp-21/bin/../lib/mix
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > iex-1.8.1
  |
  |  from: /Users/inomurko/.asdf/installs/elixir/1.8.1-otp-21/bin/../lib/iex
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > omg_child_chain_rpc-0.2.2
  |
  |  from: _build/dev/lib/omg_child_chain_rpc
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :runtime_tools
  |      :sasl
  |      :telemetry
  |      :omg_utils
  |      :httpoison
  |      :omg_bus
  |      :plug_cowboy
  |      :phoenix
  |      :cors_plug
  |      :spandex_phoenix
  |      :spandex_datadog
  |      :omg_status
  |      :omg_child_chain
  |  includes: none
  |_____

  > spandex_phoenix-0.4.1
  |
  |  from: _build/dev/lib/spandex_phoenix
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :plug
  |      :spandex
  |  includes: none
  |_____

  > cors_plug-2.0.0
  |
  |  from: _build/dev/lib/cors_plug
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > sasl-3.4
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/sasl-3.4
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > compiler-7.4
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/compiler-7.4
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > omg_child_chain-0.2.2
  |
  |  from: _build/dev/lib/omg_child_chain
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :telemetry
  |      :omg_utils
  |      :ex_rlp
  |      :omg_bus
  |      :omg_status
  |      :omg_db
  |      :omg_eth
  |      :omg
  |  includes: none
  |_____

  > logger-1.8.1
  |
  |  from: /Users/inomurko/.asdf/installs/elixir/1.8.1-otp-21/bin/../lib/logger
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > telemetry-0.4.0
  |
  |  from: _build/dev/lib/telemetry
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > omg_utils-0.2.2
  |
  |  from: _build/dev/lib/omg_utils
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > omg_status-0.2.2
  |
  |  from: _build/dev/lib/omg_status
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :sasl
  |      :os_mon
  |      :statix
  |      :telemetry
  |      :decorator
  |      :omg_bus
  |      :spandex_datadog
  |      :sentry
  |  includes:
  |      :vmstats  |_____

  > os_mon-2.5
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/os_mon-2.5
  |  applications:
  |      :kernel
  |      :stdlib
  |      :sasl
  |  includes: none
  |_____

  > statix-1.2.1
  |
  |  from: _build/dev/lib/statix
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > decorator-1.3.0
  |
  |  from: _build/dev/lib/decorator
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > spandex_datadog-0.4.0
  |
  |  from: _build/dev/lib/spandex_datadog
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :spandex
  |      :msgpax
  |  includes: none
  |_____

  > msgpax-2.2.3
  |
  |  from: _build/dev/lib/msgpax
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > sentry-7.0.6
  |
  |  from: _build/dev/lib/sentry
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :hackney
  |      :logger
  |  includes: none
  |_____

  > hackney-1.15.1
  |
  |  from: _build/dev/lib/hackney
  |  applications:
  |      :kernel
  |      :stdlib
  |      :crypto
  |      :asn1
  |      :public_key
  |      :ssl
  |      :idna
  |      :mimerl
  |      :certifi
  |      :ssl_verify_fun
  |      :metrics
  |  includes: none
  |_____

  > asn1-5.0.9
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/asn1-5.0.9
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > public_key-1.6.7
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/public_key-1.6.7
  |  applications:
  |      :asn1
  |      :crypto
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > ssl-9.3
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/ssl-9.3
  |  applications:
  |      :crypto
  |      :public_key
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > idna-6.0.0
  |
  |  from: _build/dev/lib/idna
  |  applications:
  |      :kernel
  |      :stdlib
  |      :unicode_util_compat
  |  includes: none
  |_____

  > unicode_util_compat-0.4.1
  |
  |  from: _build/dev/lib/unicode_util_compat
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > mimerl-1.2.0
  |
  |  from: _build/dev/lib/mimerl
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > certifi-2.5.1
  |
  |  from: _build/dev/lib/certifi
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > ssl_verify_fun-1.1.4
  |
  |  from: _build/dev/lib/ssl_verify_fun
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > metrics-1.0.1
  |
  |  from: _build/dev/lib/metrics
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > vmstats-2.3.1
  |
  |  from: _build/dev/lib/vmstats
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > omg_db-0.2.2
  |
  |  from: _build/dev/lib/omg_db
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :telemetry
  |      :omg_utils
  |      :rocksdb
  |      :omg_status
  |  includes: none
  |_____

  > rocksdb-1.3.2
  |
  |  from: _build/dev/lib/rocksdb
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > omg_eth-0.2.2
  |
  |  from: _build/dev/lib/omg_eth
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :sasl
  |      :logger
  |      :omg_utils
  |      :ex_abi
  |      :ethereumex
  |      :omg_bus
  |      :websockex
  |      :plug_cowboy
  |      :omg_status
  |  includes: none
  |_____

  > ex_abi-0.2.1
  |
  |  from: _build/dev/lib/ex_abi
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :exth_crypto
  |  includes: none
  |_____

  > exth_crypto-0.1.6
  |
  |  from: _build/dev/lib/exth_crypto
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :libsecp256k1
  |      :binary
  |      :keccakf1600
  |  includes: none
  |_____

  > libsecp256k1-0.1.10
  |
  |  from: _build/dev/lib/libsecp256k1
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > binary-0.0.5
  |
  |  from: _build/dev/lib/binary
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > keccakf1600-2.0.0
  |
  |  from: _build/dev/lib/keccakf1600
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > ethereumex-0.5.4
  |
  |  from: _build/dev/lib/ethereumex
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :poolboy
  |      :jason
  |      :httpoison
  |  includes: none
  |_____

  > poolboy-1.5.2
  |
  |  from: _build/dev/lib/poolboy
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > jason-1.1.2
  |
  |  from: _build/dev/lib/jason
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > httpoison-1.4.0
  |
  |  from: _build/dev/lib/httpoison
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :hackney
  |  includes: none
  |_____

  > ex_rlp-0.5.2
  |
  |  from: _build/dev/lib/ex_rlp
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > stdlib-3.9
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/stdlib-3.9
  |  applications:
  |      :kernel
  |  includes: none
  |_____

  > runtime_tools-1.13.3
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/runtime_tools-1.13.3
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > omg_bus-0.2.2
  |
  |  from: _build/dev/lib/omg_bus
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes:
  |      :phoenix_pubsub  |_____

  > phoenix_pubsub-1.1.2
  |
  |  from: _build/dev/lib/phoenix_pubsub
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :crypto
  |  includes: none
  |_____

  > crypto-4.5
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/crypto-4.5
  |  applications:
  |      :kernel
  |      :stdlib
  |  includes: none
  |_____

  > omg-0.2.2
  |
  |  from: _build/dev/lib/omg
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :sentry
  |      :telemetry
  |      :merkle_tree
  |      :ex_rlp
  |      :omg_bus
  |      :plug_cowboy
  |      :omg_status
  |      :omg_db
  |      :omg_eth
  |  includes: none
  |_____

  > merkle_tree-1.6.1
  |
  |  from: _build/dev/lib/merkle_tree
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > websockex-0.4.2
  |
  |  from: _build/dev/lib/websockex
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :ssl
  |      :crypto
  |  includes: none
  |_____

  > phoenix-1.4.7
  |
  |  from: _build/dev/lib/phoenix
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :eex
  |      :crypto
  |      :telemetry
  |      :phoenix_pubsub
  |      :plug
  |  includes: none
  |_____

  > eex-1.8.1
  |
  |  from: /Users/inomurko/.asdf/installs/elixir/1.8.1-otp-21/bin/../lib/eex
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > spandex-2.4.1
  |
  |  from: _build/dev/lib/spandex
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :optimal
  |      :plug
  |  includes: none
  |_____

  > optimal-0.3.6
  |
  |  from: _build/dev/lib/optimal
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > plug-1.8.2
  |
  |  from: _build/dev/lib/plug
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :mime
  |      :plug_crypto
  |  includes: none
  |_____

  > mime-1.3.1
  |
  |  from: _build/dev/lib/mime
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |  includes: none
  |_____

  > distillery-2.1.1
  |
  |  from: _build/dev/lib/distillery
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :runtime_tools
  |      :artificery
  |  includes: none
  |_____

  > artificery-0.4.2
  |
  |  from: _build/dev/lib/artificery
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |  includes: none
  |_____

  > plug_cowboy-1.0.0
  |
  |  from: _build/dev/lib/plug_cowboy
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :logger
  |      :cowboy
  |      :plug
  |  includes: none
  |_____

  > cowboy-1.1.2
  |
  |  from: _build/dev/lib/cowboy
  |  applications:
  |      :kernel
  |      :stdlib
  |      :ranch
  |      :cowlib
  |      :crypto
  |  includes: none
  |_____

  > ranch-1.3.2
  |
  |  from: _build/dev/lib/ranch
  |  applications:
  |      :kernel
  |      :stdlib
  |      :ssl
  |  includes: none
  |_____

  > cowlib-1.0.2
  |
  |  from: _build/dev/lib/cowlib
  |  applications:
  |      :kernel
  |      :stdlib
  |      :crypto
  |  includes: none
  |_____

  > kernel-6.4
  |
  |  from: /Users/inomurko/.asdf/installs/erlang/22.0/lib/erlang/lib/kernel-6.4
  |  applications: none
  |  includes: none
  |_____

  > plug_crypto-1.0.0
  |
  |  from: _build/dev/lib/plug_crypto
  |  applications:
  |      :kernel
  |      :stdlib
  |      :elixir
  |      :crypto
  |  includes: none
  |_____

==> Running validation checks..
    > Distillery.Releases.Checks.Erts * PASS
    > Distillery.Releases.Checks.Cookie * PASS
    > Distillery.Releases.Checks.LoadedOrphanedApps * PASS
==> Generated overlay vars:
    release_name=:child_chain
    release_version="0.2.2+1c7e3a6"
    is_upgrade=false
    upgrade_from=:latest
    dev_mode=true
    include_erts=false
    include_src=false
    include_system_libs=false
    erl_opts=""
    run_erl_env=""
    erts_vsn="10.4"
    output_dir="_build/dev/rel/child_chain"
==> Copying applications to _build/dev/rel/child_chain
==> Generating start_erl.data
==> Generating vm.args from rel/vm.args
==> Generating sys.config from config/config.exs
==> Generating boot scripts
==> Generating RELEASES
==> Applying overlays
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/pre_configure.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/post_configure.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/pre_start.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/post_start.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/pre_stop.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/post_stop.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/pre_upgrade.d
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/hooks/post_upgrade.d
==> Applying copy overlay
    src: _build/dev/lib/distillery/priv/libexec
    dst: releases/0.2.2+1c7e3a6/libexec
==> Applying mkdir overlay
    dst: releases/0.2.2+1c7e3a6/commands
==> Applying copy overlay
    src: rel/commands/init_key_value_db.sh
    dst: releases/0.2.2+1c7e3a6/commands/init_key_value_db.sh
==> You have set dev_mode to true, skipping archival phase
Release successfully built!
To start the release you have built, you can use one of the following tasks:

    # start a shell, like 'iex -S mix'
    > _build/dev/rel/child_chain/bin/child_chain console

    # start in the foreground, like 'mix run --no-halt'
    > _build/dev/rel/child_chain/bin/child_chain foreground

    # start in the background, must be stopped with the 'stop' command
    > _build/dev/rel/child_chain/bin/child_chain start

If you started a release elsewhere, and wish to connect to it:

    # connects a local shell to the running node
    > _build/dev/rel/child_chain/bin/child_chain remote_console

    # connects directly to the running node's console
    > _build/dev/rel/child_chain/bin/child_chain attach

For a complete listing of commands and their use:

    > _build/dev/rel/child_chain/bin/child_chain help
``` init terminating in do_boot ({undef,[{Elixir.Distillery.Releases.Config.Provider,init,[[_]],[]},{init,eval_script,2,[]},{init,do_boot,3,[]}]}) Crash dump is being written to: erl_crash.dump...done =CRASH REPORT==== 20-Sep-2019::13:10:12.385708 === crasher: initial call: application_master:init/4 pid: <0.76.0> registered_name: [] exception exit: {bad_return, {{elixir,start,[normal,[]]}, {'EXIT', {undef, [{elixir,start,[normal,[]],[]}, {application_master,start_it_old,4, [{file,"application_master.erl"}, {line,277}]}]}}}} in function application_master:init/4 (application_master.erl, line 138) ancestors: [<0.75.0>] message_queue_len: 1 messages: [{'EXIT',<0.77.0>,normal}] links: [<0.75.0>,<0.43.0>] dictionary: [] trap_exit: true status: running heap_size: 987 stack_size: 27 reductions: 193 neighbours: {"init terminating in do_boot",{undef,[{'Elixir.Distillery.Releases.Config.Provider',init,[[{'Elixir.OMG.Eth.ReleaseTasks.SetContract',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]},{'Elixir.OMG.Eth.ReleaseTasks.SetEthereumClient',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]},{'Elixir.OMG.DB.ReleaseTasks.SetKeyValueDB',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]},{'Elixir.OMG.ChildChainRPC.ReleaseTasks.SetEndpoint',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]},{'Elixir.OMG.ChildChainRPC.ReleaseTasks.SetTracer',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]},{'Elixir.OMG.Status.ReleaseTasks.SetSentry',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]},{'Elixir.OMG.Status.ReleaseTasks.SetTracer',[<<"${RELEASE_ROOT_DIR}/config/config.exs">>]}]],[]},{init,eval_script,2,[]},{init,do_boot,3,[]}]}} with dev config: environment :dev do set(dev_mode: true) set(include_erts: false) set(cookie: :dev) end ```

Description of issue

Erlang/OTP 22 [erts-10.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe]
Elixir 1.8.1
{:distillery, "~> 2.1", runtime: false},