Skip to content

Crossbow

Crossbow #228283

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-*"
env:
ARCHERY_DEBUG: 1
ARCHERY_USE_DOCKER_CLI: 1
jobs:
as-cran:
name: "rchk"
runs-on: ubuntu-20.04
strategy:
fail-fast: false
env:
ARROW_R_DEV: "FALSE"
RSPM: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest"
steps:
- name: Checkout Arrow
uses: actions/checkout@v4
with:
fetch-depth: 1
path: arrow
repository: apache/arrow
ref: eb5f162daab41b5c29afd644ba8517e8969fc56e
submodules: recursive
- uses: r-lib/actions/setup-r@v2
- uses: r-lib/actions/setup-pandoc@v2
- uses: r-lib/actions/setup-r-dependencies@v2
with:
working-directory: 'arrow/r'
extra-packages: |
any::rcmdcheck
- name: Build arrow package
run: |
R CMD build --no-build-vignettes arrow/r
mkdir packages
mv arrow_*.tar.gz packages
- name: rchk
run: |
docker run -v `pwd`/packages:/rchk/packages kalibera/rchk:latest /rchk/packages/arrow_*.tar.gz |& tee rchk.out
- name: Confirm that rchk has no errors
# Suspicious call, [UP], and [PB] are all of the error types currently at
# https://github.com/kalibera/cran-checks/tree/HEAD/rchk/results
# though this might not be exhaustive, there does not appear to be a way to have rchk return an error code
# CRAN also will remove some of the outputs (especially those related to Rcpp and strptime, e.g.
# ERROR: too many states (abstraction error?))
# https://github.com/kalibera/rchk
run: |
if [ $(grep -c "Suspicious call" rchk.out) -gt 0 ] || [ $(grep -c "\[UP\]" rchk.out) -gt 0 ] || [ $(grep -c "\[PB\]" rchk.out) -gt 0 ]; then
echo "Found rchk errors"
cat rchk.out
exit 1
fi
if: always()
- name: Dump rchk output logs
run: cat rchk.out
if: always()