You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by le...@apache.org on 2026/01/06 02:07:57 UTC
(datasketches-java) 01/01: fix javadocs-yml 2, add manual script.
This is an automated email from the ASF dual-hosted git repository.
leerho pushed a commit to branch fix_javadoc_yml_2
in repository https://gitbox.apache.org/repos/asf/datasketches-java.git
commit 592c85b5ae3830384f8c944084fa40f02659b79c
Author: Lee Rhodes <le...@gmail.com>
AuthorDate: Mon Jan 5 18:07:42 2026 -0800
fix javadocs-yml 2, add manual script.
---
.github/workflows/javadoc.yml | 17 ++++++++++++-----
tools/ManualJavadocsDeploy.sh | 41 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 53 insertions(+), 5 deletions(-)
diff --git a/.github/workflows/javadoc.yml b/.github/workflows/javadoc.yml
index 401cda867..eb68e1619 100644
--- a/.github/workflows/javadoc.yml
+++ b/.github/workflows/javadoc.yml
@@ -3,6 +3,7 @@ name: Deploy Versioned Javadoc (Manual Trigger)
# Select the target TAG where to run the workflow from.
# This TAG name becomes the subdirectory under branch gh-pages/docs/${TAG}
# where the javadocs will be copied to.
+# The gh-pages/docs branch/folder must exist.
on:
workflow_dispatch:
@@ -47,25 +48,31 @@ jobs:
git config user.name "github-actions[bot]"
# 3. Ensure gh-pages exists and is fetched
- git fetch origin gh-pages --depth=1 || git branch gh-pages
+ echo "git fetch origin gh-pages"
+ git fetch origin gh-pages
# 4. Create worktree for the gh-pages branch in a separate folder
+ echo "git worktree add ./gh-pages-dir origin/gh-pages"
git worktree add ./gh-pages-dir origin/gh-pages
# 5. Deployment Logic in a subshell to capture exit code
(
- set -e # Exit subshell on any internal error
- TARGET_PATH="gh-pages-dir/docs/$TAG_NAME" # target directory inside the worktree
+ set -e
+ TARGET_PATH="gh-pages-dir/docs/$TAG_NAME"
mkdir -p "$TARGET_PATH"
+ echo "cp -a target/site/apidocs/. $TARGET_PATH/"
cp -a target/site/apidocs/. "$TARGET_PATH/"
-
cd gh-pages-dir
- git add .
+ echo "git add docs/$TAG_NAME"
+ git add "docs/$TAG_NAME"
if git diff --staged --quiet; then
echo "No changes detected for Javadoc $TAG_NAME."
else
+ echo "Changes detected for Javadoc $TAG_NAME."
+ echo "git commit ..."
git commit -m "Manual Javadoc deployment for tag $TAG_NAME"
+ echo "git push origin gh-pages"
git push origin gh-pages
fi
) || EXIT_CODE=$?
diff --git a/tools/ManualJavadocsDeploy.sh b/tools/ManualJavadocsDeploy.sh
new file mode 100755
index 000000000..e0b991885
--- /dev/null
+++ b/tools/ManualJavadocsDeploy.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+set -e
+
+TAG_NAME="test"
+# Build and Generate Javadoc
+# POM is configured to output to target/site/apidocs
+echo "mvn clean javadoc:javadoc"
+mvn clean javadoc:javadoc
+
+echo "git fetch origin gh-pages"
+git fetch origin gh-pages
+
+echo "Create worktree"
+git worktree add ./gh-pages-dir origin/gh-pages
+EXIT_CODE=0
+(
+ set -e
+ TARGET_PATH="gh-pages-dir/docs/$TAG_NAME"
+ mkdir -p "$TARGET_PATH"
+ cp -a target/site/apidocs/. "$TARGET_PATH/"
+ cd gh-pages-dir
+ git add "docs/$TAG_NAME"
+
+ if git diff --staged --quiet; then
+ echo "No changes detected for Javadoc $TAG_NAME."
+ else
+ echo "Changes detected for Javadoc $TAG_NAME."
+ git status
+ git commit -m "Manual Javadoc deployment for tag $TAG_NAME"
+ git push origin gh-pages
+ fi
+) || EXIT_CODE=$?
+
+# Cleanup
+echo "Cleaning up worktree..."
+git worktree remove --force ./gh-pages-dir || true
+
+# Final exit based on subshell success
+exit $EXIT_CODE
+if: success()
+run: echo "Javadoc for $TAG_NAME is now live on gh-pages."
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org