-
-
Notifications
You must be signed in to change notification settings - Fork 45
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
Create a system for downstream documentation build testing #104
Comments
Now that all of the packages have docs with tests, and we have a whole lot more testing hardware than we ever had before, we are starting to slim down the tutorials (which only get rebuilt and fixed periodically) and moving them to the individual package docs. We are doing this and turning all of the docs into downstream tests (SciML/SciMLDocs#104) so that they are perpetually working. It will be a massive amount of compute, but we have that now, so let's make everything super robust. Related PRs: - SciML/JumpProcesses.jl#277 - SciML/DiffEqParamEstim.jl#188 - SciML/DiffEqBayes.jl#274
@ChrisRackauckas to be clear, the expectation here is that the documentation for every single downstream package (i.e., all packages whose docs get aggregated on docs.sciml.ai) needs to be run, to ensure that documentation for these respective packages build, right? |
No. OrdinaryDiffEq tests (SciML/OrdinaryDiffEq.jl#1813) run downstream tests on things like SciMLSensitivity.jl. However, those do not include the tutorials in the SciMLSensitivity.jl documentation. OrdinaryDiffEq.jl should run the downstream SciMLSensitivity.jl test suite and its tutorial runs. |
Ah okay, now I understand, thanks. That makes perfect sense. |
We have a ton of information in our doc builds. It's where all of our tutorials are! So the biggest stress test is actually the documentation builds. The system of downstream testing by @giordano has been a massive success for our testing, so we would like to get something similarly setup for downstream testing of the documentation. One way I had in mind for doing this was:
runtests.jl
forGROUP=="DownstreamDocs"
include("make.jl)
if GROUP!="DownstreamDocs"
around the deploymentDownstreamDocs
to the Downstream.yml files that need the respective doc tests.That seems innocent enough, and would work for a lot of cases. Though there are a few cases, like SciMLSensitivity.jl, SciMLDocs.jl, and DiffEqGPU.jl, which require GPUs as part of the documentation build and thus are run on the Buildkite instead of Github Actions. Some of them are just really long builds too (SciMLSensitivity We would like to put the high level SciMLDocs (with its new showcase!) onto many packages (since those are the first tutorials everyone will see), so if that requires GPU, then the system really needs to be able to use GPUs, at least for some of the tests.
For that, I might need the help of @thazhemadam @staticfloat to maybe get some thing I can paste into some Buildkite scripts?
(Note: since it won't need deployment it won't need the help with the cryptographic signatures stuff, thank god)
The text was updated successfully, but these errors were encountered: