This is an automated email from the ASF dual-hosted git repository.

ppkarwasz pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/logging-flume.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 0005055b Add `deploy-site.yaml` workflow (#465)
0005055b is described below

commit 0005055b3db1ad5f4b7fce4cbafd128c66b00d26
Author: Piotr P. Karwasz <[email protected]>
AuthorDate: Wed Jul 22 20:21:54 2026 +0200

    Add `deploy-site.yaml` workflow (#465)
    
    * Migrate `flume-project` hierarchy to `logging-parent`
    
    Flume requires two POM hierarchies:
    
    - `flume-dependencies` and `flume-third-party-dependencies` are published 
flattened, so their common metadata can live in the aggregator `flume-project`, 
which is **not** published.
    - `flume-parent` is reused by satellite repositories, so it **needs** to be 
published. To avoid an excessive inheritance chain, it extends `logging-parent` 
directly instead of `flume-project`.
    
    Assisted-By: Claude Fable 5 <[email protected]>
    
    * Add `deploy-site.yaml` workflow
    
    Publishes the Antora site to `logging.apache.org/flume/2.x` via the 
`logging-parent` reusable workflow. The old 1.x site stays in 
`logging-flume-site` (`content/flume`).
    
    Since the reusable workflow builds the site with `./mvnw site`, the Antora 
setup is aligned with the `logging-parent` machinery: `antora.yml` is generated 
from `antora.tmpl.yml` (kept in sync for local builds, as in Log4j) and the 
useless per-module Maven Site Plugin runs are skipped in both POM hierarchies.
    
    Assisted-By: Claude Fable 5 <[email protected]>
---
 .github/workflows/deploy-site.yaml                 | 88 ++++++++++++++++++++++
 .gitignore                                         |  4 +-
 antora-playbook.yaml                               |  7 +-
 flume-parent/pom.xml                               |  2 +
 pom.xml                                            |  6 ++
 .../site/antora/antora.tmpl.yml                    | 32 ++------
 6 files changed, 109 insertions(+), 30 deletions(-)

diff --git a/.github/workflows/deploy-site.yaml 
b/.github/workflows/deploy-site.yaml
new file mode 100644
index 00000000..005d3e9a
--- /dev/null
+++ b/.github/workflows/deploy-site.yaml
@@ -0,0 +1,88 @@
+#
+# 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.
+#
+
+name: deploy-site
+
+on:
+  push:
+    branches:
+      - "trunk"
+      - "trunk-site-pro"
+      - "release/*"
+    paths-ignore:
+      - "**.md"
+      - "**.txt"
+
+# Disable all permissions by defaults:
+# Permissions are enabled on a per-job basis.
+permissions: { }
+
+jobs:
+
+  deploy-site-stg:
+    if: github.repository == 'apache/logging-flume' && github.ref_name == 
'trunk'
+    uses: 
apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@gha/v0
+    # Write permissions for committing the generated site
+    permissions:
+      contents: write
+    with:
+      asf-yaml-content: |
+        staging:
+          profile: ~
+          whoami: ${{ github.ref_name }}-site-stg-out
+          subdir: content/flume/2.x
+      target-branch: ${{ github.ref_name }}-site-stg-out
+
+  deploy-site-pro:
+    if: github.repository == 'apache/logging-flume' && github.ref_name == 
'trunk-site-pro'
+    uses: 
apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@gha/v0
+    # Write permissions for committing the generated site
+    permissions:
+      contents: write
+    with:
+      asf-yaml-content: |
+        publish:
+          profile: ~
+          whoami: ${{ github.ref_name }}-out
+          subdir: content/flume/2.x
+      target-branch: ${{ github.ref_name }}-out
+
+  export-version:
+    if: github.repository == 'apache/logging-flume' && 
startsWith(github.ref_name, 'release/')
+    runs-on: ubuntu-latest
+    outputs:
+      version: ${{ steps.export-version.outputs.version }}
+    steps:
+      - name: Export version
+        id: export-version
+        run: |
+          version=$(echo "${{ github.ref_name }}" | sed 's/^release\///')
+          echo "version=$version" >> "$GITHUB_OUTPUT"
+
+  deploy-site-rel:
+    needs: export-version
+    uses: 
apache/logging-parent/.github/workflows/deploy-site-reusable.yaml@gha/v0
+    # Write permissions for committing the generated site
+    permissions:
+      contents: write
+    with:
+      asf-yaml-content: |
+        staging:
+          profile: ~
+          whoami: ${{ github.ref_name }}-site-stg-out
+          subdir: content/flume/${{ needs.export-version.outputs.version }}
+      target-branch: ${{ github.ref_name }}-site-stg-out
diff --git a/.gitignore b/.gitignore
index 4d0da02e..469a8054 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,5 +25,7 @@ nb-configuration.xml
 # Maven extensions
 .mvn/extensions.xml
 
-# Node dependencies
+# Node.js and dependencies
 /node_modules/
+/node/
+
diff --git a/antora-playbook.yaml b/antora-playbook.yaml
index cc5fa88e..61adeda9 100644
--- a/antora-playbook.yaml
+++ b/antora-playbook.yaml
@@ -17,7 +17,7 @@
 
 site:
   title: Apache Flume
-  url: "https://flume.apache.org";
+  url: "https://logging.apache.org/flume/2.x";
   start_page: "flume::index.adoc"
 
 content:
@@ -25,8 +25,9 @@ content:
     - url: .
       branches: HEAD
       start_paths:
-        - src/site/antora
-      edit_url: 
"https://github.com/apache/logging-flume-site/edit/{refname}/{path}";
+        # Generated during the `pre-site` phase from `src/site/antora`, see 
the `antora` profile of `logging-parent`
+        - target/generated-site/antora
+      edit_url:
 
 asciidoc:
   attributes:
diff --git a/flume-parent/pom.xml b/flume-parent/pom.xml
index ddebdd36..9eb2fd18 100644
--- a/flume-parent/pom.xml
+++ b/flume-parent/pom.xml
@@ -210,6 +210,8 @@
 
   <properties>
     <flume-project.version>2.0.0-SNAPSHOT</flume-project.version>
+    <!-- The website is generated by Antora from `flume-project`: skip the 
per-module `maven-site-plugin` sites. -->
+    <maven.site.skip>true</maven.site.skip>
     <!-- Update for year of distribution. Should be set by the 
maven-release-plugin at release time. -->
     
<project.build.outputTimestamp>2022-01-02T00:00:00Z</project.build.outputTimestamp>
     <!-- Set default encoding to UTF-8 to remove maven complaints -->
diff --git a/pom.xml b/pom.xml
index 30a1ef6b..a943877f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -101,6 +101,12 @@
     <!-- Dummy value; overwritten by CI at release time. Do not edit manually. 
-->
     
<project.build.outputTimestamp>2026-01-01T00:00:00Z</project.build.outputTimestamp>
 
+    <!-- Flume does not use `log4j-changelog` to generate release notes (there 
is no `src/changelog` directory). -->
+    <log4j.changelog.skip>true</log4j.changelog.skip>
+
+    <!-- The website is generated by Antora from the root module: skip the 
per-module `maven-site-plugin` sites. -->
+    <maven.site.skip>true</maven.site.skip>
+
     <!-- `flume-project` is only a reactor aggregator: it is neither installed 
nor deployed.
          The published children (`flume-dependencies`, 
`flume-third-party-dependencies`) override these back to `false`. -->
     <maven.install.skip>true</maven.install.skip>
diff --git a/antora-playbook.yaml b/src/site/antora/antora.tmpl.yml
similarity index 58%
copy from antora-playbook.yaml
copy to src/site/antora/antora.tmpl.yml
index cc5fa88e..6ba752a5 100644
--- a/antora-playbook.yaml
+++ b/src/site/antora/antora.tmpl.yml
@@ -15,29 +15,9 @@
 # limitations under the License.
 #
 
-site:
-  title: Apache Flume
-  url: "https://flume.apache.org";
-  start_page: "flume::index.adoc"
-
-content:
-  sources:
-    - url: .
-      branches: HEAD
-      start_paths:
-        - src/site/antora
-      edit_url: 
"https://github.com/apache/logging-flume-site/edit/{refname}/{path}";
-
-asciidoc:
-  attributes:
-    tabs-sync-option: true
-  extensions:
-    - "@asciidoctor/tabs"
-
-ui:
-  bundle:
-    url: 
"https://gitlab.com/antora/antora-ui-default/-/jobs/artifacts/HEAD/raw/build/ui-bundle.zip?job=bundle-stable";
-    snapshot: true
-
-output:
-  dir: ./target/site
+name: flume
+title: Apache Flume
+version: ~
+start_page: index.adoc
+nav:
+  - modules/ROOT/nav.adoc

Reply via email to