parroty / excoveralls

Coverage report tool for Elixir with coveralls.io integration.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Travis build not working

pspeter3 opened this issue · comments

Randomized with seed 23244
** (exit) exited in: :gen_fsm.sync_send_all_state_event(#PID<0.441.0>, {:start, 8000}, :infinity)
    ** (EXIT) an exception was raised:
        ** (MatchError) no match of right hand side value: ""
            (ssl) ssl_handshake.erl:1737: :ssl_handshake.dec_hello_extensions/2
            (ssl) ssl_handshake.erl:926: :ssl_handshake.decode_handshake/3
            (ssl) tls_handshake.erl:155: :tls_handshake.get_tls_handshake_aux/3
            (ssl) tls_connection.erl:433: :tls_connection.next_state/4
            (stdlib) gen_fsm.erl:503: :gen_fsm.handle_msg/7
            (stdlib) proc_lib.erl:237: :proc_lib.init_p_do_apply/3
    (stdlib) gen_fsm.erl:242: :gen_fsm.sync_send_all_state_event/3
    (ssl) ssl_connection.erl:1654: :ssl_connection.sync_send_all_state_event/2
    (ssl) ssl_connection.erl:101: :ssl_connection.handshake/2
    (ssl) tls_connection.erl:81: :tls_connection.start_fsm/8
    (ssl) ssl_connection.erl:71: :ssl_connection.connect/8
    (hackney) src/hackney_connect/hackney_connect.erl:241: :hackney_connect.do_connect/5
    (hackney) src/hackney_connect/hackney_connect.erl:30: :hackney_connect.connect/5
    (hackney) src/hackney_client/hackney.erl:309: :hackney.request/5

Thanks for the report. Is there any way to get more detailed information? (git repo would be nice, but at least related code like mix.exs and elixir version would help). A push couple days ago in my repo was working at Travis, and I would like to isolate the condition.

Unfortunately I deleted that repository but I'm trying to reproduce it. On a side note, do you know if excoveralls works with umbrella projects?

Thanks. It may not work well with umbrella projects at the moment.. At parent app, it seems [mix test] tasks are invoked multiple times for each of the child apps, and I don't have coordination mechanism yet (I can observe some weird behavior with my brief experiment).
It may be possible to make it work at least locally, but need more thinking for travis execution.

Yeah I got it to work locally but could not get it to work on Travis which is unfortunate but understandable.

Was the original issue occur on the umbrella project?

No, I'm sorry for conflating the two issues. The original issue was with travis when I used the below to get the faster container builds.

sudo: false

I'm seeing the exact same SSL issue with my repository at https://github.com/my-flow/mt940. The travis build is here: https://travis-ci.org/my-flow/mt940
@parroty is there a problem with the host name verification?

Thanks for the information. I could simulate the error by forking your repository. I haven't been able to identify the issue yet, I could partially make it work for erlang 17.1 (though failing on 17.3...).

https://github.com/parroty/mt940
https://travis-ci.org/parroty/mt940/builds/62483907
https://coveralls.io/r/parroty/mt940

I'll check more later about isolating the issue (erlang 17.3 seems working on other my repository). Maybe it's good to upgrade hackney to the latest, etc.

I'm not sure about the host name verification (it's about ssl_verify_hostname package?).

Good catch! According to this Stackoverflow link it is a "known bug in Erlang OTP 17.3". I upgraded to 17.4 and that solved my problem. Thanks!

Thanks for the reference!