2016-07-28 6 views
1

トラビスCIを使用する新しいビルド/リリースプロセスをセットアップします。テストが合格した後にリリースを作成しようとするとクラッシュしてしまいます。ミックスリリースがクラッシュ(例外あり)

コマンド:

mix release --verbosity=verbose

エラー:これはUbuntuの12.02でエリクサー1.2.2およびOTP 18.2.1を実行している

===> 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 

が、これはとの問題である可能性がありOTPのインストール?

EDIT

mix.exs中のアプリケーションの一覧からexrmがありませんでした。

===> 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." 
+0

この種の問題が発生したとき、ライブラリのバージョンに関連していました。あなたのマシンとCIマシンでdepsのバージョンが同じであることを確認してください。 – Migore

+0

@migoreどうすれば確認できますか? mix.lockファイルは変更されていないので、実行されている場所にかかわらずすべてが同じままでなければならないと思います。すべてのテストに合格しているので、正しいライブラリを引き離していると思います。 – ascrookes

答えて

0

私はリリースで引っ張った(rel)展開する前に、新しいリリースを追加するディレクトリ:これはエラーであり、今それを追加しました。そのディレクトリが正しくフォーマットされていないので、exrmが新しいリリースを追加すると、探しているものが見つかりませんでした。クラッシュしました。 この問題が発生している場合は、新しいrelディレクトリから始めて、問題が修正されているかどうか確認してください。

関連する問題