-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
BLD: only doc CI build #25145
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
BLD: only doc CI build #25145
Conversation
It seems to work, CodeQL and linting are still run, which I think is fine (they tend to finish before the doc build anyway and are checking things like examples which may be cases where you would use this). The one that we may want to add config to leave out is appveyor. that is pretty consistently the bottleneck as we get fewer parallel tasks from them, so they get backed up over multiple PRs. The default handles the standard set we had wanted, but we may need to write our own (possibly including the standard set as I think it overrides, not appends) now that we want another. (We can remove/squash out my empty test commit if it's desired, but that was a successful attempt at testing, for what it's worth) |
Cool - I would use this a lot, just to save heating up the server farm where CI lives. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if we could do even better/easier for us all and if the only files that are updated in a PR are in docs/*
or tutorials/*
only send to circle (i.e. anything that isn't tested code can ignore the tests). That would avoid needing to remember a commit message.
Something involving a path filter?
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore
That would be very cool - the [skip *] commands are used by very few people so far as I can tell |
And if at some point you want to speed up your doc only build, you could render only the examples that have been modified by the PR, e.g. But if your API pages take longer than your examples it might not be worth the effort |
I'll go ahead and merge this as is. It works, and helps. I may follow up with something making appveyor respect this key, as that is often the worst offender in terms of waiting for ci to complete. |
missing parenthesis introduced in #25145 Reformatted the if block based on a similar set of conditions from the cygwin tests to make it more readable and help locate the error. I will exercise the unbreak CI self merge upon green CI (unless objected to)
PR Summary
Currently we can add messages to the commit to tell various CIs to not run. However, if you only make a documentation change, you need to specify
[skip-azp] [skip appveyor] [skip actions]
.This adds the
[ci doc]
option so that only circleCI doc building will happen.I think I did this right, but not sure.
PR Checklist
Documentation and Tests
pytest
passes)Release Notes
.. versionadded::
directive in the docstring and documented indoc/users/next_whats_new/
.. versionchanged::
directive in the docstring and documented indoc/api/next_api_changes/
next_whats_new/README.rst
ornext_api_changes/README.rst