Edeliver/distillery upgrade error: Release failed with multiple errors: No such module: asn1_db

Hello,

I’ve hit a wall deploying an upgrade via edeliver/distillery. I’ve been able to deploy the past year and recently had to update to OTP 25 because of a dependency requirement which broke everything. The error I’m getting is:
==> Release failed with multiple errors: No such module: asn1_db

System versions:

Erlang/OTP 25

Mix 1.14.2 (compiled with Erlang/OTP 25)

Deps list:

[
      {:phoenix, "1.6.6"},
      {:phoenix_pubsub, "~> 2.0"},
      {:phoenix_ecto, "~> 4.0"},
      {:ecto_sql, "~> 3.9.2"},
      {:postgrex, ">= 0.16.2"},
      {:gettext, "~> 0.11"},
      {:jason, "~> 1.0"},
      {:sentry, "8.0.0"},
      {:hackney, "1.18.0"},
      {:plug_cowboy, "2.5.2"},
      {:guardian, "~> 2.3.1"},
      {:comeonin, "~> 5.3.3"},
      {:bcrypt_elixir, "~> 3.0"},
      {:edeliver, ">= 1.9.2"},
      {:distillery,
       github: "tedi/distillery",
       ref: "4a0892b",
       warn_missing: false,
       override: true},
      {:httpoison, "~> 1.6"},
      {:poison, "~> 3.1"},
      {:pigeon, "~> 1.5.0"},
      {:kadabra, "~> 0.4.4"},
      {:geo_postgis, "~> 3.1"},
      {:timex, "3.7.6"},
      {:credo, "~> 1.4", only: [:dev, :test], runtime: false},
      {:atomic_map, "~> 0.8"},
      {:mux, "~> 1.8.0"},
      {:redix, ">= 1.0.0"},
      {:swoosh, "~> 1.6"},
      {:oban, "~> 2.11"},
      {:oban_pro, "~> 0.10", repo: "oban"},
      {:telemetry_metrics, "~> 0.6"},
      {:telemetry_poller, "~> 1.0"},
      {:remote_ip, "~> 1.1.0"},
      {:mogrify, "~> 0.9.1"},
      {:blurhash, "~> 1.0.0"},
      {:ex_aws, "~> 2.4.0"},
      {:ex_aws_s3, "~> 2.4.0"},
      {:sweet_xml, "~> 0.7.3"},
      {:polyline, "~> 1.3"},
    ]

Worth noting that I tried adding :asn1 to extra_applications.
Upon doing a search, the following libs seem to be referencing asn1 in one form or another (although nothing is coming up for asn1_db):

cowlib
hackney
Jose
ranch
ssl_verify_fun
timex

Any help would be greatly appreciated as I’ve hit a wall here. Thank you.

Resurfacing this as I have not yet figured out a solution. Any thoughts?

Does the release work with OTP 24? From what I’ve heard they either retired or changed the ASN.1 library from OTP, even though I can’t find any official information related to this. If you have both OTP-24 and OTP-25 on your system, make a diff of the library asn.1, maybe it will shed some light into the issue.

I tried installing both OTP 24 and OTP 23 to no avail. Worth mentioning that I switched dependency management in the server to asdf.

Sadly I can’t help you more, as there is not much information to go on. Is there a reason you are using distillery from a commit reference?

Yep, had to fork distillery because it was having issues running on OTP 25. Reverted back to standard version when trying again in OTP 23/24.

Good news figured it out. Thank you for your help @D4no0. I ended up reinstalling asdf and erl/elixir on my prod environments, and did a fresh deploy. Still used all the same versions, I think something went awry on the initial install of asdf.

1 Like