1# Licensed to the Apache Software Foundation (ASF) under one
2# or more contributor license agreements.  See the NOTICE file
3# distributed with this work for additional information
4# regarding copyright ownership.  The ASF licenses this file
5# to you under the Apache License, Version 2.0 (the
6# "License"); you may not use this file except in compliance
7# with the License.  You may obtain a copy of the License at
8#
9#   http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing,
12# software distributed under the License is distributed on an
13# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14# KIND, either express or implied.  See the License for the
15# specific language governing permissions and limitations
16# under the License.
17
18# NOTE: must set "Crossbow" as name to have the badge links working in the
19# github comment reports!
20name: Crossbow
21
22on:
23  push:
24    branches:
25      - "*-github-*"
26
27jobs:
28  package:
29    name: Package Gandiva
30    runs-on: macos-latest
31    steps:
32      - name: Checkout Arrow
33        run: |
34          git clone --no-checkout {{ arrow.remote }} arrow
35          git -C arrow fetch -t {{ arrow.remote }} {{ arrow.branch }}
36          if [ $CROSSBOW_USE_COMMIT_ID = true ]; then git -C arrow checkout {{ arrow.head }}; else git -C arrow checkout FETCH_HEAD; fi
37          git -C arrow submodule update --init --recursive
38      - name: Build Gandiva
39        run: |
40          cd arrow
41          mkdir -p dist
42          export ARROW_TEST_DATA=$PWD/testing/data
43          set -e
44          dev/tasks/gandiva-jars/build-cpp-osx.sh
45          dev/tasks/gandiva-jars/build-java.sh
46        env:
47          OS_NAME: "osx"
48          CHECK_SHARED_DEPENDENCIES: true
49          MACOSX_DEPLOYMENT_TARGET: "10.11"
50      - name: Set up Crossbow
51        run: |
52          brew install libgit2
53          pip3 install \
54            click \
55            github3.py \
56            jinja2 \
57            jira \
58            pygit2 \
59            ruamel.yaml \
60            setuptools_scm \
61            toolz
62      - name: Upload artifacts
63        run: |
64          python3 arrow/dev/tasks/crossbow.py \
65            --queue-path arrow \
66            --queue-remote {{ queue_remote_url }} \
67            upload-artifacts \
68            --sha {{ task.branch }} \
69            --tag {{ task.tag }} \
70            --pattern "arrow/dist/*.jar"
71        env:
72          CROSSBOW_GITHUB_TOKEN: {{ '${{ secrets.CROSSBOW_GITHUB_TOKEN }}' }}