Skip to content

Latest elixir:1.13.4 breaks SSL options for Postgrex. #50

@hairyhum

Description

@hairyhum

When building images with elixir:1.13.4@sha256:ac98dada9d5ef97a519b0eda94fb2c68f3f9df7748bbdc3d833b4ed396a8cb5d there is a following error trying to start postgrex with SSL certificate:

2022-09-15T22:58:06.293 pid=<0.2837.0> [error] GenServer #PID<0.2837.0> terminating\n** (stop) exited in: :gen_statem.call(#PID<0.2844.0>, {:start, 15000}, :infinity)\n    ** (EXIT) an exception was raised:\n        ** (ArgumentError) errors were found at the given arguments:\n\n  * 1st argument: not a binary\n\n            :erlang.binary_to_list('..data/us-west-1-bundle.pem')\n            (ssl 10.7.3.4) ssl_config.erl:221: :ssl_config.file_error/2\n            (ssl 10.7.3.4) ssl_config.erl:53: :ssl_config.init/2\n            (ssl 10.7.3.4) ssl_gen_statem.erl:162: :ssl_gen_statem.ssl_config/3\n            (ssl 10.7.3.4) tls_connection.erl:151: :tls_connection.init/1\n            (stdlib 3.17.2.1) proc_lib.erl:226: :proc_lib.init_p_do_apply/3\n    (stdlib 3.17.2.1) gen.erl:220: :gen.do_call/4\n    (stdlib 3.17.2.1) gen_statem.erl:703: :gen_statem.call_dirty/4\n    (ssl 10.7.3.4) ssl_gen_statem.erl:1224: :ssl_gen_statem.call/2\n    (ssl 10.7.3.4) ssl_gen_statem.erl:232: :ssl_gen_statem.handshake/2\n    (ssl 10.7.3.4) ssl_gen_statem.erl:201: :ssl_gen_statem.connect/8\n    (postgrex 0.15.13) lib/postgrex/protocol.ex:738: Postgrex.Protocol.ssl_connect/2\n    (postgrex 0.15.13) lib/postgrex/protocol.ex:655: Postgrex.Protocol.handshake/2\n    (postgrex 0.15.13) lib/postgrex/protocol.ex:160: Postgrex.Protocol.connect_endpoints/6\nLast message: nil

While postgrex is configured with

config :my_app, MyApp.Repo,
  ssl_opts: [
    verify: :verify_peer,
    cacertfile: "/mnt/postgres/certificate/us-west-1-bundle.pem"
  ]

Building the same code with elixir:1.13.4@sha256:fd1b66f10b2c3d47095f9a400f932c5d30b6fe25624b53bc7a4c8909dcb7aa54 and with elixir:1.14.0 does not produce such error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions