Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

curl failure when building docs #191

Open
TylerLoewen opened this issue Jul 6, 2020 · 6 comments · Fixed by #192
Open

curl failure when building docs #191

TylerLoewen opened this issue Jul 6, 2020 · 6 comments · Fixed by #192

Comments

@TylerLoewen
Copy link
Contributor

Documentation error occurred in two jobs:
https://travis-ci.com/github/invenia/LibPQ.jl/jobs/357596026
https://travis-ci.com/github/invenia/LibPQ.jl/jobs/357716606

┌ Warning: `curl -sI --proto =http,https,ftp,ftps https://codecov.io/gh/invenia/LibPQ.jl --max-time 10 -o /dev/null --write-out '%{http_code} %{url_effective} %{redirect_url}'` failed:
│   exception = failed process: Process(`curl -sI --proto =http,https,ftp,ftps https://codecov.io/gh/invenia/LibPQ.jl --max-time 10 -o /dev/null --write-out '%{http_code} %{url_effective} %{redirect_url}'`, ProcessExited(28)) [28]
└ @ Documenter.DocChecks ~/.julia/packages/Documenter/Eayks/src/DocChecks.jl:204
[ Info: Populate: populating indices.
ERROR: LoadError: `makedocs` encountered an error. Terminating build
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] runner(::Type{Documenter.Builder.RenderDocument}, ::Documenter.Documents.Document) at /home/travis/.julia/packages/Documenter/Eayks/src/Builder.jl:204
 [3] dispatch(::Type{Documenter.Builder.DocumentPipeline}, ::Documenter.Documents.Document) at /home/travis/.julia/packages/Documenter/Eayks/src/Utilities/Selectors.jl:167
 [4] #3 at /home/travis/.julia/packages/Documenter/Eayks/src/Documenter.jl:287 [inlined]
@iamed2
Copy link
Owner

iamed2 commented Jul 6, 2020

Fix is to set linkcheck_timeout to something large enough to avoid these timeouts (it's a keyword argument to makedocs)

@arnaudh
Copy link

arnaudh commented Aug 31, 2020

@iamed2
Copy link
Owner

iamed2 commented Aug 31, 2020

Maybe we should just switch to Coveralls if Codecov is giving us so much trouble

@arnaudh
Copy link

arnaudh commented Aug 31, 2020

Not sure this is related, but I get a 405 Method Not Allowed when trying the curl command that fails in the CI job.

$ curl -sI --proto =http,https,ftp,ftps https://codecov.io/gh/invenia/LibPQ.jl --max-time 60 -o /dev/null --write-out '%{http_code} %{url_effective} %{redirect_url}'
405 https://codecov.io/gh/invenia/LibPQ.jl %

The curl flag -I fetches the headers only (HTTP HEAD request).
If I remove it, I get a 200:

200 https://codecov.io/gh/invenia/LibPQ.jl %

Seems like the server for codecov.io doesn't support the HTTP HEAD request.
Not sure that could help explain the occasional timeout though.

I posted a message on community.codecov.io: https://community.codecov.io/t/intermittent-timeout-contacting-codecov-io-from-github-actions/1690/16

@arnaudh arnaudh reopened this Aug 31, 2020
@arnaudh
Copy link

arnaudh commented Sep 1, 2020

Got a response from Codecov folks: they are working on the infrastructure to prevent timeouts.
In the meantime they suggest adding --retry 5 --retry-delay 2 --connect-timeout 2 to the curl command.
However the curl command in our case being inside Documenter.jl, I'm not sure it's worth making changes there again. After all, if a link needs retrying to succeed, it makes sense for the link-checking to fail.

Given Codecov are aware of the issue and working on it, I suggest we wait it out. If we find the issue too noisy we can disable linkcheck in the interim.

@iamed2
Copy link
Owner

iamed2 commented Sep 3, 2020

After all, if a link needs retrying to succeed, it makes sense for the link-checking to fail.

This makes sense to an extent; it's reasonable to include any retrying that might happen automatically in a typical web browser, since linkcheck's aim is to test that people can follow links in their browser to existing pages. But I'm not sure what happens in typical web browsers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants