Problems with deployment on Gigalixir using two databases

As a happy beginner of programming Elixir I have met a problem that I cant find the solution for:
I am using two databases in a Phoenix installation, Postgres and ArrangoDB and it is working as a charm but when I try to deploy on Gigalixir I get this error:
remote: ‘Elixir.Mix.Tasks.Ecto.Migrate’ specified in arangox_ecto and ecto_sql
remote: ‘Elixir.Mix.Tasks.Ecto.Gen.Migration’ specified in arangox_ecto and ecto_sql
remote: Deploy aborted

I m clueless to this. My setup for the two databases follows this setup

Any help/advise that makes me understand how to solve this would be great.

It looks like the error is “duplicated modules” which means two modules have the same name which is a problem because they have to be unique. Looks like it’s https://github.com/TomGrozev/arangox_ecto/blob/master/lib/mix/tasks/ecto.migrate.ex
and https://github.com/elixir-ecto/ecto_sql/blob/master/lib/mix/tasks/ecto.migrate.ex.

Perhaps, you can follow bitwalker’s advice here

Or better yet, is it possible you don’t need one of those dependencies?

As @jesse stated, you should remove one of the modules. If you need to use both it could be a change that could be added.

The module is built so that you do not need to include ecto_sql. Some frameworks such as Phoenix will automatically include ecto_sql, you need to remove this from your mix.exs file.

2 Likes

Thanks for the branch that fixed this problem! This solved a lot of problems for me…
Think this paved the way for others to use a ArangoDB together with Postgres in Phoenix-applications.