distillery icon indicating copy to clipboard operation
distillery copied to clipboard

Release failed: no match of right hand side value: {:error, :eacces}

Open KoeusIss opened this issue 2 years ago • 3 comments

Steps to reproduce

$ mix phx.new --no-ecto phoenix_distillery
$ cd phoenix_distillery

# mix.exs
defp deps do
    [ ...,
     {:distillery, "~> 2.0"},
      ...,
    ]
  end

$ mix deps.get --only prod
$ MIX_ENV=prod mix compile
$ npm run deploy --prefix assets
$ mix phx.digest

$ mix distillery.init

$ MIX_ENV=prod mix distillery.release

Just a brief list of the steps required to produce the issue.

Verbose Logs

Paste the output of the release command you ran with the --verbose flag below in the summary tags (this helps keep the issue easy to navigate):

Generated phoenix_distillery app
==> Assembling release..
==> Building release phoenix_distillery:0.1.0 using environment prod
==> Including ERTS 13.1.4 from /opt/homebrew/Cellar/erlang/25.2.2/lib/erlang/erts-13.1.4
==> Release failed: no match of right hand side value: {:error, :eacces}

KoeusIss avatar Mar 02 '23 17:03 KoeusIss

Same problem here, did you manage to resolve it? I turned on Verbose logging and no more useful hints I can see. Release on it's own seems to work fine.

gazzer82 avatar Mar 15 '23 14:03 gazzer82

somewhere in the Internet i found decision:

fix error: Release failed: no match of right hand side value: {:error, :eacces}

--- a/lib/distillery/releases/assembler.ex
+++ b/lib/distillery/releases/assembler.ex
@@ -860,7 +860,7 @@ defmodule Distillery.Releases.Assembler do
# no work around for this
old_cwd = File.cwd!()
File.cd!(output_dir)
-    :ok = :release_handler.create_RELEASES('./', 'releases', '#{relfile}', [])
+    :ok = :release_handler.create_RELEASES(File.cwd!(), Path.join([File.cwd!(), 'releases']), '#{relfile}', [])
     File.cd!(old_cwd)
     :ok
     end

and it works for me (dont forget remove _build folder after fixes)

miklblitz avatar Apr 05 '23 06:04 miklblitz