ci: test docs for non-master builds

This ensures that we test on CI before merge-requests gets merged.

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5469>
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ca9a223..16bcc9a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -24,13 +24,16 @@
   - virgl
   - success
 
-pages:
+.docs-base:
   image: alpine
   stage: deploy
   script:
   - apk --no-cache add py3-pip
   - pip3 install sphinx sphinx_rtd_theme
   - sphinx-build -b html docs public
+
+pages:
+  extends: .docs-base
   artifacts:
     paths:
     - public
@@ -41,6 +44,16 @@
     - docs/**/*
     - .gitlab-ci.yml
 
+test-docs:
+  extends: .docs-base
+  except:
+    refs:
+    - master@mesa/mesa
+  only:
+    changes:
+    - docs/**/*
+    - .gitlab-ci.yml
+
 # When to automatically run the CI
 .ci-run-policy:
   rules: