-
Notifications
You must be signed in to change notification settings - Fork 123
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
devops: adds test action; makes run-all-checks exit with proper status code #150
base: main
Are you sure you want to change the base?
Conversation
Notes:
|
I like shell scripts, and I don't know Ruby/rake too much. What would the technical advantage be? Performance?
I agree that this is highly suboptimal. We may need to ditch htmlproofer on CI in favor of some more-targeted-but-faster internal link checking. Any ideas for a good candidate? If not, rolling our own wouldn't be that difficult. |
For now, maybe just disable the |
My mistake, the shell script was incorrect. Just updated it; we have two failing checks, a small one on GitHub usernames and some shenanigans with the includes check. I'm not super familiar with these, @ctrueden do you have any pointers on what I should do here?
I would think that we'd get significant performance benefits - afaik (not entirely sure about this) running HTMLProofer from Ruby gives you parallelism benefits (currently the shell script runs it independently on every single file, in a blocking fashion), and we skip a bunch of syscalls/context switches into shell. But, this is also not my area of expertise! We also get some type benefits (i.e. only passing in valid parameters to the object).
I haven't had to do link-checking for a project on this scale before, but my understanding is that HTMLProofer is one of the better Ruby alternatives. Maybe we should first explore running it from Ruby + tweaking the options? If things don't work out, I can help look into alternatives. |
03d0f3c
to
6f83a2b
Compare
This PR does two things:
run-all-checks.sh
after building the siterun-all-checks.sh
to exit with the correct status code depending on the status of the testsAs a note,
run-all-checks.sh
takes a pretty non-trivial amount of time; I also think that some of these scripts could be done usingrake
and going directly into the Ruby tool, rather than through a shell script; but, that's out of scope for this PR!Part of #92.