简体   繁体   中英

mix release crashing with exception

Setting up a new build/release process that uses Travis CI. When I try to create the release after tests pass I am getting a crash.

Command:

mix release --verbosity=verbose

Error:

===> Provider successfully run: resolve_release
===> Running provider release
** (exit) an exception was raised:
    ** (MatchError) no match of right hand side value: {:error, :enoent}
        src/rlx_prv_assembler.erl:224: :rlx_prv_assembler.rewrite_app_file/2
        (stdlib) lists.erl:1238: :lists.map/2
        src/ec_plists.erl:753: anonymous fn/3 in :ec_plists.local_runmany/3
    src/ec_plists.erl:900: :ec_plists.handle_error/3
    src/ec_plists.erl:764: :ec_plists.local_runmany/3
    src/rlx_prv_assembler.erl:161: :rlx_prv_assembler.copy_app_directories_to_output/3
    src/rlx_prv_assembler.erl:59: :rlx_prv_assembler.do/1
    src/relx.erl:308: :relx.run_provider/2
    (stdlib) lists.erl:1262: :lists.foldl/3
    src/relx.erl:291: :relx.run_providers_for_actions/2
    lib/exrm/utils.ex:103: ReleaseManager.Utils.relx/5
18:03:06.402 [error] Process #PID<0.13561.0> raised an exception
** (MatchError) no match of right hand side value: {:error, :enoent}
    src/rlx_prv_assembler.erl:224: :rlx_prv_assembler.rewrite_app_file/2
    (stdlib) lists.erl:1238: :lists.map/2
    src/ec_plists.erl:753: anonymous fn/3 in :ec_plists.local_runmany/3    ===> Provider successfully run: resolve_release
===> Running provider release
** (exit) an exception was raised:
    ** (MatchError) no match of right hand side value: {:error, :enoent}
        src/rlx_prv_assembler.erl:224: :rlx_prv_assembler.rewrite_app_file/2
        (stdlib) lists.erl:1238: :lists.map/2
        src/ec_plists.erl:753: anonymous fn/3 in :ec_plists.local_runmany/3
    src/ec_plists.erl:900: :ec_plists.handle_error/3
    src/ec_plists.erl:764: :ec_plists.local_runmany/3
    src/rlx_prv_assembler.erl:161: :rlx_prv_assembler.copy_app_directories_to_output/3
    src/rlx_prv_assembler.erl:59: :rlx_prv_assembler.do/1
    src/relx.erl:308: :relx.run_provider/2
    (stdlib) lists.erl:1262: :lists.foldl/3
    src/relx.erl:291: :relx.run_providers_for_actions/2
    lib/exrm/utils.ex:103: ReleaseManager.Utils.relx/5
18:03:06.402 [error] Process #PID<0.13561.0> raised an exception
** (MatchError) no match of right hand side value: {:error, :enoent}
    src/rlx_prv_assembler.erl:224: :rlx_prv_assembler.rewrite_app_file/2
    (stdlib) lists.erl:1238: :lists.map/2
    src/ec_plists.erl:753: anonymous fn/3 in :ec_plists.local_runmany/3

This is running Elixir 1.2.2 and OTP 18.2.1 on Ubuntu 12.02

Could this be an issue with the install of OTP?

EDIT

Was missing exrm from the applications list in mix.exs . Added it there and now this is the error:

===> Provider successfully run: app_discover
===> Running provider resolve_release
===> Solving Release cymbal-0.0.1
===> Provider (resolve_release) failed with: {error,
                                                 {rlx_prv_release,
                                                  {failed_solve,
                                                   {unreachable_package,
                                                    ssl_verify_fun}}}}
==> ERROR: "Unable to find application ssl_verify_fun. See the debug output for more information."

I was pulling in a release ( rel ) directory to add the new release to before deploying. That directory was not formatted correctly so when exrm went to add a new release it couldn't find what it was looking for and crashed. If you are having this issue try starting with a fresh rel dir to see if that fixes the issue.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM