From eb7cbb577ef5690717e0bb4a9d7c3c69c0a672c7 Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Thu, 6 May 2021 14:22:33 -0400
Subject: gitlab-ci: clarify name of rsync upload block for binaries

---
 .gitlab-ci.yml     | 10 +++++-----
 .gitlab/upload.yml |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 18844d1..daec83c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -54,7 +54,7 @@ prep:doc-package:
 
 upload:source-package:
     extends:
-        - .rsync_upload
+        - .rsync_upload_binary
         - .run_only_for_package
     dependencies:
         - prep:source-package
@@ -406,7 +406,7 @@ build:linux-x86_64-package:
 
 upload:linux-x86_64-package:
     extends:
-        - .rsync_upload
+        - .rsync_upload_binary
         - .run_only_for_package
     dependencies:
         - build:linux-x86_64-package
@@ -430,7 +430,7 @@ build:linux-aarch64-package:
 
 upload:linux-aarch64-package:
     extends:
-        - .rsync_upload
+        - .rsync_upload_binary
         - .run_only_for_package
     dependencies:
         - build:linux-aarch64-package
@@ -542,7 +542,7 @@ build:macos-package:
 
 upload:macos-package:
     extends:
-        - .rsync_upload
+        - .rsync_upload_binary
         - .run_only_for_package
     dependencies:
         - build:macos-package
@@ -565,7 +565,7 @@ build:macos10.10-package:
 
 upload:macos10.10-package:
     extends:
-        - .rsync_upload
+        - .rsync_upload_binary
         - .run_only_for_package
     dependencies:
         - build:macos10.10-package
diff --git a/.gitlab/upload.yml b/.gitlab/upload.yml
index 8b8daa1..9294386 100644
--- a/.gitlab/upload.yml
+++ b/.gitlab/upload.yml
@@ -1,6 +1,6 @@
 # Steps for uploading artifacts
 
-.rsync_upload:
+.rsync_upload_binary:
     image: "fedora:32"
     stage: upload
     tags:
-- 
cgit v0.12


From 354ae6fe2e48d15ed205b39b59f553f1e32aa8dd Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Thu, 6 May 2021 14:27:48 -0400
Subject: gitlab-ci: add jobs to build cmake.org/cmake/help/git-{master,stage}
 docs

---
 .gitlab-ci.yml        | 12 ++++++++++++
 .gitlab/artifacts.yml |  9 +++++++++
 .gitlab/os-linux.yml  | 15 +++++++++++++++
 .gitlab/rules.yml     | 12 ++++++++++++
 4 files changed, 48 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index daec83c..090012a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -63,6 +63,18 @@ upload:source-package:
     variables:
         RSYNC_DESTINATION: dev
 
+# Documentation builds
+
+build:help:master:
+    extends:
+        - .cmake_org_help
+        - .run_only_for_continuous_master
+
+build:help:stage:
+    extends:
+        - .cmake_org_help
+        - .run_only_for_continuous_stage
+
 # Lint builds
 
 build:debian10-iwyu:
diff --git a/.gitlab/artifacts.yml b/.gitlab/artifacts.yml
index bf8e8b6..edd313f 100644
--- a/.gitlab/artifacts.yml
+++ b/.gitlab/artifacts.yml
@@ -97,3 +97,12 @@
         paths:
             # Take the install tree.
             - build/install-doc/
+
+.cmake_org_help_artifacts:
+    artifacts:
+        expire_in: 1d
+        paths:
+            - build/html
+        exclude:
+            - build/html/.buildinfo
+            - build/html/objects.inv
diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml
index 81c4d8d..d0ac85e 100644
--- a/.gitlab/os-linux.yml
+++ b/.gitlab/os-linux.yml
@@ -368,3 +368,18 @@
         - .needs_centos6_x86_64
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
+
+### Documentation
+
+.cmake_org_help:
+    stage: build
+    extends:
+        - .fedora33
+        - .linux_builder_tags
+        - .cmake_org_help_artifacts
+    script:
+        - *before_script_linux
+        - mkdir -p build/
+        - cd build/
+        - cmake ../Utilities/Sphinx -GNinja -DSPHINX_HTML=ON -DSPHINX_FLAGS="-A versionswitch=1"
+        - ninja
diff --git a/.gitlab/rules.yml b/.gitlab/rules.yml
index 4ac67e8..4846fea 100644
--- a/.gitlab/rules.yml
+++ b/.gitlab/rules.yml
@@ -62,3 +62,15 @@
         - if: '$CMAKE_CI_PACKAGE == "true"'
           when: on_success
         - when: never
+
+.run_only_for_continuous_master:
+    rules:
+        - if: '$CMAKE_CI_PROJECT_MAIN_BRANCH != null && $CI_COMMIT_BRANCH != null && $CMAKE_CI_PROJECT_MAIN_BRANCH == $CI_COMMIT_BRANCH'
+          when: on_success
+        - when: never
+
+.run_only_for_continuous_stage:
+    rules:
+        - if: '$CMAKE_CI_PROJECT_CONTINUOUS_BRANCH != null && $CI_COMMIT_BRANCH != null && $CMAKE_CI_PROJECT_CONTINUOUS_BRANCH == $CI_COMMIT_BRANCH'
+          when: on_success
+        - when: never
-- 
cgit v0.12


From a5a4b0b6ab01a6747a9ee4aed3693836f77c3eef Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Thu, 6 May 2021 14:28:44 -0400
Subject: gitlab-ci: add jobs to upload cmake.org/cmake/help/git-{master,stage}
 docs

---
 .gitlab-ci.yml     | 22 ++++++++++++++++++++++
 .gitlab/upload.yml | 17 +++++++++++++++++
 2 files changed, 39 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 090012a..f8a22a5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -70,11 +70,33 @@ build:help:master:
         - .cmake_org_help
         - .run_only_for_continuous_master
 
+upload:help:master:
+    extends:
+        - .rsync_upload_help
+        - .run_only_for_continuous_master
+    variables:
+        RSYNC_DESTINATION: git-master
+    dependencies:
+        - build:help:master
+    needs:
+        - build:help:master
+
 build:help:stage:
     extends:
         - .cmake_org_help
         - .run_only_for_continuous_stage
 
+upload:help:stage:
+    extends:
+        - .rsync_upload_help
+        - .run_only_for_continuous_stage
+    variables:
+        RSYNC_DESTINATION: git-stage
+    dependencies:
+        - build:help:stage
+    needs:
+        - build:help:stage
+
 # Lint builds
 
 build:debian10-iwyu:
diff --git a/.gitlab/upload.yml b/.gitlab/upload.yml
index 9294386..3253fd3 100644
--- a/.gitlab/upload.yml
+++ b/.gitlab/upload.yml
@@ -16,3 +16,20 @@
         - chmod 400 $RSYNC_BINARY_KEY
         - ssh-keygen -y -f $RSYNC_BINARY_KEY > $RSYNC_BINARY_KEY.pub
         - rsync -tv --recursive -e "ssh -i $RSYNC_BINARY_KEY -o StrictHostKeyChecking=no -o LogLevel=ERROR" build/ kitware@cmake.org:$RSYNC_DESTINATION/
+
+.rsync_upload_help:
+    stage: upload
+    image: "fedora:33"
+    tags:
+        - docker
+        - linux
+        - build
+    environment:
+        name: rsync-upload
+
+    script:
+        - ls build/html/index.html
+        - dnf install -y --setopt=install_weak_deps=False rsync openssh-clients
+        - chmod 400 $RSYNC_HELP_KEY
+        - ssh-keygen -y -f $RSYNC_HELP_KEY > $RSYNC_HELP_KEY.pub
+        - rsync -tv --recursive --delete -e "ssh -i $RSYNC_HELP_KEY -o StrictHostKeyChecking=no -o LogLevel=ERROR" build/html/ kitware@cmake.org:$RSYNC_DESTINATION/
-- 
cgit v0.12