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

weibin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-graphar-website.git


The following commit(s) were added to refs/heads/main by this push:
     new e2b853e  Add api reference generation process (#13)
e2b853e is described below

commit e2b853e6c5ea36ce5a4aae887d45e3cec988f825
Author: Weibin Zeng <[email protected]>
AuthorDate: Wed Apr 17 15:54:12 2024 +0800

    Add api reference generation process (#13)
    
    
    
    Signed-off-by: acezen <[email protected]>
---
 .github/workflows/deploy.yml   | 132 ++++++++++++++++++++++++++++++++++++++++-
 docusaurus.config.ts           |   9 +--
 static/docs/cpp/index.html     |  29 ---------
 static/docs/java/index.html    |  29 ---------
 static/docs/pyspark/index.html |  29 ---------
 static/docs/spark/index.html   |  29 ---------
 6 files changed, 136 insertions(+), 121 deletions(-)

diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 5a94f86..5d5df47 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -23,8 +23,121 @@ on:
   pull_request:
 
 jobs:
+  build-cpp-doc:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          repository: apache/incubator-graphar
+          ref: main
+
+      - name: Install dependencies
+        run: sudo apt-get install -y doxygen 
+
+      - name: Build Cpp docs
+        working-directory: cpp
+        run: |
+          mkdir build
+          cd build
+          cmake -DBUILD_DOCS_ONLY=ON ..
+          make docs
+
+      - name: Upload docs
+        uses: actions/upload-artifact@v3
+        with:
+          name: cpp-docs
+          path: ./cpp/build/docs_doxygen/html
+
+  build-java-doc:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          repository: apache/incubator-graphar
+          ref: main
+
+      - name: Install dependencies
+        run: |
+          # install the latest arrow deb to test arrow
+          wget -c https://apache.jfrog.io/artifactory/arrow/"$(lsb_release 
--id --short | tr 'A-Z' 'a-z')"/apache-arrow-apt-source-latest-$(lsb_release 
--codename --short).deb \
+            -P /tmp/
+          sudo apt-get install -y 
/tmp/apache-arrow-apt-source-latest-"$(lsb_release --codename --short)".deb
+          sudo apt-get update -y
+          # TODO: ISSUE-241
+          sudo apt install -y libarrow-dev=14.0.1-1 \
+                            libarrow-dataset-dev=14.0.1-1 \
+                            libarrow-acero-dev=14.0.1-1 \
+                            libparquet-dev=14.0.1-1
+          sudo apt-get install libcurl4-openssl-dev -y
+          sudo apt-get install llvm-11 clang-11 lld-11 libclang-11-dev 
libz-dev -y
+
+      - name: Build Java docs
+        working-directory: java
+        run: |
+          export JAVA_HOME=${JAVA_HOME_11_X64}
+          mvn javadoc:javadoc
+
+      - name: Upload docs
+        uses: actions/upload-artifact@v3
+        with:
+          name: java-docs
+          path: ./java/target/site/apidocs
+  
+  build-spark-docs:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          repository: apache/incubator-graphar
+          ref: main
+
+      - name: Build Spark Docs
+        working-directory: spark
+        run: |
+          export JAVA_HOME=${JAVA_HOME_11_X64}
+          # FIXME: the install is not necessary, but it is a workaround for 
the issue
+          mvn clean install -DskipTests -Dspotless.check.skip=true
+          mvn scala:doc
+
+      - name: Upload docs
+        uses: actions/upload-artifact@v3
+        with:
+          name: spark-docs
+          path: ./spark/graphar/target/site/scaladocs
+
+  build-pyspark-docs:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          repository: apache/incubator-graphar
+          ref: main
+
+      - name: Install Poetry
+        working-directory: pyspark
+        run: |
+          yes | sudo python3 -m pip install poetry --quiet
+          poetry env use python3
+
+      - name: Build PySpark Docs
+        working-directory: pyspark
+        run: |
+          make install_docs
+          make docs
+
+      - name: Upload docs
+        uses: actions/upload-artifact@v3
+        with:
+          name: pyspark-docs
+          path: ./pyspark/docs
+
   deploy:
     runs-on: ubuntu-latest
+    needs:
+      - build-cpp-doc
+      - build-java-doc
+      - build-spark-docs
+      - build-pyspark-docs
     steps:
       - uses: actions/checkout@v4
 
@@ -42,7 +155,6 @@ jobs:
           repository: apache/incubator-graphar
           path: incubator-graphar
           ref: main
-          depth: 1
 
       - name: Syncing the docs folder and remove incubator-graphar
         run: |
@@ -50,6 +162,24 @@ jobs:
           rsync -av incubator-graphar/docs/ docs/
           rm -rf incubator-graphar
 
+      - name: Download cpp docs
+        uses: actions/download-artifact@v3
+        with:
+          name: cpp-docs
+          path: ./static/docs/cpp
+
+      - name: Download spark docs
+        uses: actions/download-artifact@v3
+        with:
+          name: spark-docs
+          path: ./static/docs/spark
+
+      - name: Download pyspark docs
+        uses: actions/download-artifact@v3
+        with:
+          name: pyspark-docs
+          path: ./static/docs/pyspark
+
       - name: Install dependencies
         run: pnpm install
   
diff --git a/docusaurus.config.ts b/docusaurus.config.ts
index d6ec7d5..9b3611a 100644
--- a/docusaurus.config.ts
+++ b/docusaurus.config.ts
@@ -112,10 +112,11 @@ const config: Config = {
               label: 'C++ Library',
               to: 'pathname:///docs/cpp/'
             },
-            {
-              label: 'Java Library',
-              to: 'pathname:///docs/java/'
-            },
+            // TODO: Add Java library when it is available
+            // {
+            //   label: 'Java Library',
+            //  to: 'pathname:///docs/java/'
+            // },
             {
               label: 'Spark Library',
               to: 'pathname:///docs/spark/'
diff --git a/static/docs/cpp/index.html b/static/docs/cpp/index.html
deleted file mode 100644
index 4ac504a..0000000
--- a/static/docs/cpp/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!--
-
-    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.
-
--->
-<!DOCTYPE html>
-<html>
-<head>
-    <title>C++ API Documentation</title>
-</head>
-<body>
-    <h1>The API is coming soon.</h1>
-</body>
-</html>
diff --git a/static/docs/java/index.html b/static/docs/java/index.html
deleted file mode 100644
index 79a1219..0000000
--- a/static/docs/java/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!--
-
-    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.
-
--->
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Java API Documentation</title>
-</head>
-<body>
-    <h1>The API is coming soon.</h1>
-</body>
-</html>
diff --git a/static/docs/pyspark/index.html b/static/docs/pyspark/index.html
deleted file mode 100644
index 6cf9169..0000000
--- a/static/docs/pyspark/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!--
-
-    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.
-
--->
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Python API Documentation</title>
-</head>
-<body>
-    <h1>The API is coming soon.</h1>
-</body>
-</html>
diff --git a/static/docs/spark/index.html b/static/docs/spark/index.html
deleted file mode 100644
index 59dde8a..0000000
--- a/static/docs/spark/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!--
-
-    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.
-
--->
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Scala API Documentation</title>
-</head>
-<body>
-    <h1>The API is coming soon.</h1>
-</body>
-</html>


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to