This is an automated email from the ASF dual-hosted git repository.
engelen pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pekko.git
The following commit(s) were added to refs/heads/main by this push:
new 509b18e200 add job to publish 2.0 docs and add note about agrona
(#2567)
509b18e200 is described below
commit 509b18e200c1e105e671a414440f783df0991945
Author: PJ Fanning <[email protected]>
AuthorDate: Thu Dec 11 15:40:52 2025 +0100
add job to publish 2.0 docs and add note about agrona (#2567)
---
.github/workflows/publish-2.0-docs.yml | 102 +++++++++++++++++++++++++++++++++
project/JdkOptions.scala | 3 +-
2 files changed, 104 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/publish-2.0-docs.yml
b/.github/workflows/publish-2.0-docs.yml
new file mode 100644
index 0000000000..d3412b178e
--- /dev/null
+++ b/.github/workflows/publish-2.0-docs.yml
@@ -0,0 +1,102 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+# Based on Apache Arrow's java-nightly workflow
+#
https://github.com/apache/arrow/blob/master/.github/workflows/java_nightly.yml
+name: Publish 2.0 documentation
+
+on:
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+jobs:
+ publish:
+ name: Publish 2.0 docs
+ runs-on: ubuntu-22.04
+ if: github.repository == 'apache/pekko'
+ steps:
+ # TODO we will need to change to use a release tag in future
+ - name: Checkout
+ uses: actions/[email protected]
+ with:
+ fetch-depth: 0
+ fetch-tags: true
+ persist-credentials: false
+
+ - name: Setup Java 11
+ uses: actions/setup-java@v5
+ with:
+ distribution: temurin
+ java-version: 11
+
+ - name: Install sbt
+ uses: sbt/setup-sbt@3e125ece5c3e5248e18da9ed8d2cce3d335ec8dd # v1.1.14
+
+ - name: Cache Coursier cache
+ uses: coursier/cache-action@bebeeb0e6f48ebad66d3783946588ecf43114433 #
6.4.8
+
+ - name: Install Graphviz
+ run: |-
+ sudo apt-get install graphviz
+
+ # TODO come up with a better way to control the version, possibly based
on git tags
+ - name: Build Documentation
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
+ run: |-
+ sbt -Dpekko.genjavadoc.enabled=true "set ThisBuild / version :=
\"2.0.0-M1\"; docs/paradox; unidoc"
+
+ # Create directory structure upfront since rsync does not create
intermediate directories otherwise
+ - name: Create directory structure
+ run: |-
+ mkdir -p target/nightly-docs/docs/pekko/2.0.0-M1/
+ mkdir -p target/nightly-docs/docs/pekko/2.0/
+ cp -r docs/target/paradox/site/main/
target/nightly-docs/docs/pekko/2.0.0-M1/docs
+ cp -r docs/target/paradox/site/main/
target/nightly-docs/docs/pekko/2.0/docs
+ rm -r docs/target/paradox/site/main/
+ cp -r target/scala-2.13/unidoc
target/nightly-docs/docs/pekko/2.0.0-M1/api
+ cp -r target/scala-2.13/unidoc target/nightly-docs/docs/pekko/2.0/api
+ rm -r target/scala-2.13/unidoc
+ cp -r target/javaunidoc target/nightly-docs/docs/pekko/2.0.0-M1/japi
+ cp -r target/javaunidoc target/nightly-docs/docs/pekko/2.0/japi
+ rm -r target/javaunidoc
+
+ - name: Upload docs patch version
+ uses: ./.github/actions/sync-nightlies
+ with:
+ upload: true
+ switches: --archive --compress --update --delete --progress
--relative
+ local_path: target/nightly-docs/./docs/pekko/2.0.0-M1 # The
intermediate dot is to show `--relative` which paths to operate on
+ remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/pekko
+ remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+ remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+ remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+ remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
+
+ - name: Upload docs api version
+ uses: ./.github/actions/sync-nightlies
+ with:
+ upload: true
+ switches: --archive --compress --update --delete --progress
--relative
+ local_path: target/nightly-docs/./docs/pekko/2.0 # The intermediate
dot is to show `--relative` which paths to operate on
+ remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/pekko
+ remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+ remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+ remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+ remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}
diff --git a/project/JdkOptions.scala b/project/JdkOptions.scala
index d8f3a94b02..99291c99e1 100644
--- a/project/JdkOptions.scala
+++ b/project/JdkOptions.scala
@@ -26,8 +26,9 @@ object JdkOptions extends AutoPlugin {
val targetJavaVersion = "17"
lazy val versionSpecificJavaOptions =
- // for virtual threads
+ // for Agrona UnsafeApi and virtual threads
"--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED" ::
+ // for virtual threads
"--add-opens=java.base/java.lang=ALL-UNNAMED" ::
// for aeron
"--add-opens=java.base/sun.nio.ch=ALL-UNNAMED" ::
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]