Skip to content

Add a workflow to regularly run make linkcheck #917

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

Open
ezio-melotti opened this issue Jul 14, 2022 · 1 comment
Open

Add a workflow to regularly run make linkcheck #917

ezio-melotti opened this issue Jul 14, 2022 · 1 comment
Labels
enhancement guide-automation Automation and tooling for devguide

Comments

@ezio-melotti
Copy link
Member

This is a follow-up of #727 and related to #681. Since make linkcheck is somewhat unreliable and can't be required for regular PR, the idea is to use a workflow to run it regularly and create (or update) an issue when a link is unreachable. Note that make linkcheck is already run for PRs, but the result is only visible by looking at the logs.

@AlexWaygood shared a similar workflow in #727 (comment):

Over at typeshed, we have a test that runs every night. If it fails, a bot auto-creates an issue for us. It works pretty well!

Here's the .yml file: https://github.com/python/typeshed/blob/master/.github/workflows/daily.yml

And here's an example of an issue that the bot auto-created when the test failed: python/typeshed#7572

This workflow creates a new issue every time, and it might be ok if it's run weekly/monthly however -- if we want to run it more frequently -- updating an existing issue might be a better approach.

@hugovk also raised a concern in #727 (comment)

One concern: if the cron is often failing (which it might, and often), we don't want it to show the repo as failed at the top:

If this sounds useful we can agree on the details, fix the currently broken links, and adapt the workflow linked above.

@CAM-Gerlach
Copy link
Member

Since make linkcheck is somewhat unreliable and can't be required for regular PR

FWIW, for spyder-ide/spyder-docs which is of the same OOM as this repo, we do run it for every PR, and periodically (every couple months) update any redirects. However, I certainly wouldn't run it for a repo much bigger than this, like the PEPs or docs, and I could certainly see why that wouldn't be desirable even at this scale, depending on the number and fickleness of the links involved, as well as the obvious workflow considerations.

@hugovk also raised a concern in #727 (comment)

One concern: if the cron is often failing (which it might, and often), we don't want it to show the repo as failed at the top:

I believe you could make the action itself not mark itself as failed if the linkcheck fails, but just open the issue, so the whole repo doesn't go red?

@willingc willingc added guide-automation Automation and tooling for devguide enhancement and removed enhancement labels Oct 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement guide-automation Automation and tooling for devguide
Projects
None yet
Development

No branches or pull requests

3 participants