]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Replace Netlify with Read the Docs build previews (#103843)
authorHugo van Kemenade <hugovk@users.noreply.github.com>
Sun, 30 Apr 2023 05:02:03 +0000 (08:02 +0300)
committerGitHub <noreply@github.com>
Sun, 30 Apr 2023 05:02:03 +0000 (23:02 -0600)
Co-authored-by: Oleg Iarygin <dralife@yandex.ru>
Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
.github/workflows/documentation-links.yml [new file with mode: 0644]
.readthedocs.yml [new file with mode: 0644]
Doc/conf.py
Doc/tools/templates/layout.html
netlify.toml [deleted file]

diff --git a/.github/workflows/documentation-links.yml b/.github/workflows/documentation-links.yml
new file mode 100644 (file)
index 0000000..43a7afe
--- /dev/null
@@ -0,0 +1,27 @@
+name: Read the Docs PR preview
+# Automatically edits a pull request's descriptions with a link
+# to the documentation's preview on Read the Docs.
+
+on:
+  pull_request_target:
+    types:
+      - opened
+    paths:
+    - 'Doc/**'
+    - '.github/workflows/doc.yml'
+
+permissions:
+  pull-requests: write
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
+  cancel-in-progress: true
+
+jobs:
+  documentation-links:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: readthedocs/actions/preview@v1
+        with:
+          project-slug: "cpython-previews"
+          single-version: "true"
diff --git a/.readthedocs.yml b/.readthedocs.yml
new file mode 100644 (file)
index 0000000..898a9ae
--- /dev/null
@@ -0,0 +1,18 @@
+# Read the Docs configuration file
+# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
+# Project page: https://readthedocs.org/projects/cpython-previews/
+
+version: 2
+
+sphinx:
+   configuration: Doc/conf.py
+
+build:
+  os: ubuntu-22.04
+  tools:
+    python: "3"
+
+  commands:
+    - make -C Doc venv html
+    - mkdir _readthedocs
+    - mv Doc/build/html _readthedocs/html
index 42c23bf77c7034cc178c2a0fbe7bbb302b1d2d01..cef2a0e2837f6a836d9db9affbe5c279e4951e62 100644 (file)
@@ -114,12 +114,13 @@ if any('htmlhelp' in arg for arg in sys.argv):
 # Short title used e.g. for <title> HTML tags.
 html_short_title = '%s Documentation' % release
 
-# Deployment preview information, from Netlify
-# (See netlify.toml and https://docs.netlify.com/configure-builds/environment-variables/#git-metadata)
+# Deployment preview information
+# (See .readthedocs.yml and https://docs.readthedocs.io/en/stable/reference/environment-variables.html)
+repository_url = os.getenv("READTHEDOCS_GIT_CLONE_URL")
 html_context = {
-    "is_deployment_preview": os.getenv("IS_DEPLOYMENT_PREVIEW"),
-    "repository_url": os.getenv("REPOSITORY_URL"),
-    "pr_id": os.getenv("REVIEW_ID")
+    "is_deployment_preview": os.getenv("READTHEDOCS_VERSION_TYPE") == "external",
+    "repository_url": repository_url.removesuffix(".git") if repository_url else None,
+    "pr_id": os.getenv("READTHEDOCS_VERSION")
 }
 
 # If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
index 460161cd320223bbeeb0a9a51ba2f0e5994ab3f6..b91f8138553e623073a84e8012a7b3037d4a06fb 100644 (file)
 
 {%- if is_deployment_preview %}
 <div id="deployment-preview-warning" style="padding: .5em; text-align: center; background-color: #fff2ba; color: #6a580e;">
-  <div style="float: right; margin-top: -10px; margin-left: 10px;">
-    <a href="https://www.netlify.com">
-      <img src="https://www.netlify.com/img/global/badges/netlify-color-accent.svg" alt="Deploys by Netlify" />
-    </a>
-  </div>
   {% 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 %}
   <a href="https://docs.python.org/3/{{ pagename }}{{ file_suffix }}">{% trans %} the current stable release{% endtrans %}</a>.
diff --git a/netlify.toml b/netlify.toml
deleted file mode 100644 (file)
index f5790fc..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-[build]
-    base = "Doc/"
-    command = "make html"
-    publish = "build/html"
-    # Do not trigger netlify builds if docs were not changed.
-    # Changed files should be in sync with `.github/workflows/doc.yml`
-    ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF . ../netlify.toml"
-
-[build.environment]
-  PYTHON_VERSION = "3.8"
-  IS_DEPLOYMENT_PREVIEW = "true"