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

kszucs pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new b79eeb161e ARROW-16553: [CI][Java] Adding Java nightly packages 
(.pom/.jar) to nightlies.apache repository (#13328)
b79eeb161e is described below

commit b79eeb161e8a2137f6d0916965f1e1a3977012ad
Author: david dali susanibar arce <[email protected]>
AuthorDate: Thu Jun 9 08:45:58 2022 -0500

    ARROW-16553: [CI][Java] Adding Java nightly packages (.pom/.jar) to 
nightlies.apache repository (#13328)
    
    Configure Java to upload artifacts to 
https://nightlies.apache.org/arrow/java/
    
    Authored-by: david dali susanibar arce <[email protected]>
    Signed-off-by: Krisztián Szűcs <[email protected]>
---
 .github/workflows/java_nightly.yml | 93 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 93 insertions(+)

diff --git a/.github/workflows/java_nightly.yml 
b/.github/workflows/java_nightly.yml
new file mode 100644
index 0000000000..3a01cea583
--- /dev/null
+++ b/.github/workflows/java_nightly.yml
@@ -0,0 +1,93 @@
+# 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: Upload Java Nightly builds
+
+on:
+  workflow_dispatch:
+    inputs:
+      prefix:
+        description: Job prefix to use.
+        required: false
+        default: ''
+  schedule:
+    - cron: '0 14 * * *'
+jobs:
+  upload:
+    env:
+      PREFIX: ${{ github.event.inputs.prefix || ''}}
+      CROSSBOW_GITHUB_TOKEN: ${{ github.token }}
+    runs-on: ubuntu-latest
+    steps:
+      - name: Checkout Arrow
+        uses: actions/checkout@v3
+        with:
+          fetch-depth: 1
+          path: arrow
+          repository: apache/arrow
+          ref: master
+          submodules: recursive
+      - name: Checkout Crossbow
+        uses: actions/checkout@v3
+        with:
+          fetch-depth: 0
+          path: crossbow
+          repository: ursacomputing/crossbow
+          ref: master
+      - name: Set up Python
+        uses: actions/setup-python@v3
+        with:
+          cache: 'pip'
+          python-version: 3.8
+      - name: Install Archery
+        shell: bash
+        run: pip install -e arrow/dev/archery[all]
+      - run: mkdir -p binaries
+      - name: Download Artifacts
+        run: |
+          if [ -z $PREFIX ]; then
+            PREFIX=nightly-packaging-$(date +%Y-%m-%d)-0
+          fi
+          echo $PREFIX
+          archery crossbow download-artifacts -f java-jars -t binaries  $PREFIX
+      - shell: bash
+        name: Build Repository
+        run: |
+          if [ -z $PREFIX ]; then
+            PREFIX=nightly-packaging-$(date +%Y-%m-%d)-0
+          fi
+          
PATTERN_TO_GET_LIB_AND_VERSION='([a-z].+)-([0-9].[0-9].[0-9].dev[0-9]+)'
+          mkdir -p repo/org/apache/arrow/
+          for LIBRARY in $(ls binaries/$PREFIX/java-jars | grep -E '.jar|.pom' 
| grep dev); do
+            [[ $LIBRARY =~ $PATTERN_TO_GET_LIB_AND_VERSION ]]
+            mkdir -p 
repo/org/apache/arrow/${BASH_REMATCH[1]}/${BASH_REMATCH[2]}
+            cp binaries/$PREFIX/java-jars/$LIBRARY 
repo/org/apache/arrow/${BASH_REMATCH[1]}/${BASH_REMATCH[2]}
+            echo "Artifacts $LIBRARY configured"
+          done
+      - name: Show repo contents
+        run: tree repo
+      - name: Upload Files
+        if: ${{ github.repository == 'apache/arrow' }}
+        uses: burnett01/[email protected]
+        with:
+          switches: -avzr
+          path: repo/*
+          remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/arrow/java
+          remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }}
+          remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }}
+          remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }}
+          remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }}

Reply via email to