Skip to content

Crossbow

Crossbow #158558

Workflow file for this run

# 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.
# NOTE: must set "Crossbow" as name to have the badge links working in the
# github comment reports!
name: Crossbow
on:
push:
branches:
- "*-github-*"
jobs:
autobrew:
name: "Autobrew ${{ matrix.platform }} R ${{ matrix.r-version }}"
runs-on: ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
platform:
- macos-11
- macos-10.13 # self-hosted
r-version:
- "4.2"
- "4.1"
steps:
- name: Checkout Arrow
uses: actions/checkout@v3
with:
fetch-depth: 1
path: arrow
repository: paleolimbot/arrow
ref: b8962592d354f35dccf3684cf12ccb4618ef3cd5
submodules: recursive
- name: Configure autobrew script
run: |
# minio and sccache are pre-installed on the self-hosted 10.13 runner
if [ ${{ matrix.platform }} != macos-10.13 ]; then
# install minio for tests
brew install minio
brew install sccache
fi
cd arrow/r
# Copy all *brew formulae
cp ../dev/tasks/homebrew-formulae/autobrew/apache-arrow*.rb tools/
# Pin the git commit in the formula to match
cd tools
if [ "true" == "true" ]; then
sed -i.bak -E -e 's/apache\/arrow.git"$/paleolimbot\/arrow.git", :revision => "'"b8962592d354f35dccf3684cf12ccb4618ef3cd5"'"/' apache-arrow*.rb
else
sed -i.bak -E -e 's/arrow.git"$/arrow.git", :revision => "'"b8962592d354f35dccf3684cf12ccb4618ef3cd5"'"/' apache-arrow*.rb
fi
rm -f apache-arrow*.rb.bak
- uses: r-lib/actions/setup-r@v2
if: matrix.platform != 'macos-10.13'
with:
r-version: ${{ matrix.r-version }}
use-public-rspm: true
- name: Setup R
if: matrix.platform == 'macos-10.13'
run: |
# rig is a system utility that allows for switching
# between pre-installed R version on the self-hosted runners
rig default ${{ matrix.r-version }}
rig system setup-user-lib
rig system add-pak
- uses: r-lib/actions/setup-r-dependencies@v2
with:
working-directory: 'arrow/r'
extra-packages: |
any::rcmdcheck
any::sys
any::readr
- name: Check
env:
_R_CHECK_CRAN_INCOMING_: false
NOT_CRAN: true
ARROW_USE_PKG_CONFIG: false
ARROW_R_DEV: true
FORCE_AUTOBREW: true
AWS_ACCESS_KEY_ID: "${{ secrets.AWS_ACCESS_KEY_ID }}"
AWS_SECRET_ACCESS_KEY: "${{ secrets.AWS_SECRET_ACCESS_KEY }}"
SCCACHE_BUCKET: "${{ secrets.SCCACHE_BUCKET }}"
SCCACHE_REGION: "${{ secrets.SCCACHE_REGION }}"
SCCACHE_S3_KEY_PREFIX: "sccache"
run: arrow/ci/scripts/r_test.sh arrow
- name: Dump install logs
run: cat arrow/r/check/arrow.Rcheck/00install.out
if: always()
- name: Dump test logs
run: cat arrow/r/check/arrow.Rcheck/tests/testthat.Rout*
if: always()
- name: Save the test output
if: always()
uses: actions/upload-artifact@v2
with:
name: test-output
path: arrow/r/check/arrow.Rcheck/tests/testthat.Rout*