summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHugo van Kemenade <hugovk@users.noreply.github.com>2023-05-24 13:54:15 (GMT)
committerGitHub <noreply@github.com>2023-05-24 13:54:15 (GMT)
commitc3204ed72755042f4727754903e9e6d53b424bb1 (patch)
tree62eedceebe52ac2f6b2b41eeedcda8436dcde0d5
parenta5e0f5b230d2c900ff36be9806e3ddb3d537386b (diff)
downloadcpython-c3204ed72755042f4727754903e9e6d53b424bb1.zip
cpython-c3204ed72755042f4727754903e9e6d53b424bb1.tar.gz
cpython-c3204ed72755042f4727754903e9e6d53b424bb1.tar.bz2
RtD docs previews: Cancel building PRs if no changes in Doc dir (#104100)
Co-authored-by: Nikita Sobolev <mail@sobolevn.me> Co-authored-by: Manuel Kaufmann <humitos@gmail.com> Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
-rw-r--r--.readthedocs.yml14
-rw-r--r--Doc/tools/templates/layout.html2
2 files changed, 15 insertions, 1 deletions
diff --git a/.readthedocs.yml b/.readthedocs.yml
index 898a9ae..59830c7 100644
--- a/.readthedocs.yml
+++ b/.readthedocs.yml
@@ -13,6 +13,20 @@ build:
python: "3"
commands:
+ # https://docs.readthedocs.io/en/stable/build-customization.html#cancel-build-based-on-a-condition
+ #
+ # Cancel building pull requests when there aren't changes in the Doc directory.
+ #
+ # If there are no changes (git diff exits with 0) we force the command to return with 183.
+ # This is a special exit code on Read the Docs that will cancel the build immediately.
+ - |
+ if [ "$READTHEDOCS_VERSION_TYPE" = "external" ] && [ "$(git diff --quiet origin/main -- Doc/ .readthedocs.yml; echo $?)" -eq 0 ];
+ then
+ echo "No changes to Doc/ - exiting the build.";
+ exit 183;
+ fi
+
- make -C Doc venv html
- mkdir _readthedocs
- mv Doc/build/html _readthedocs/html
+
diff --git a/Doc/tools/templates/layout.html b/Doc/tools/templates/layout.html
index b91f813..9632ad5 100644
--- a/Doc/tools/templates/layout.html
+++ b/Doc/tools/templates/layout.html
@@ -12,7 +12,7 @@
{%- if is_deployment_preview %}
<div id="deployment-preview-warning" style="padding: .5em; text-align: center; background-color: #fff2ba; color: #6a580e;">
{% trans %}This is a deploy preview created from a <a href="{{ repository_url }}/pull/{{ pr_id }}">pull request</a>.
- For authoritative documentation, see the {% endtrans %}
+ For authoritative documentation, see {% endtrans %}
<a href="https://docs.python.org/3/{{ pagename }}{{ file_suffix }}">{% trans %} the current stable release{% endtrans %}</a>.
</div>
{%- endif %}