# 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. {% import 'macros.jinja' as macros with context %} {{ macros.github_header() }} permissions: contents: read # For OIDC token for sccache id-token: write jobs: test: name: | Docker Test {{ flags|default("") }} {{ image }} {{ command|default("") }} runs-on: ubuntu-latest {{ macros.github_set_env(env) }} timeout-minutes: {{ timeout|default(60) }} steps: {{ macros.github_checkout_arrow(fetch_depth=fetch_depth|default(1))|indent }} {{ macros.github_free_space()|indent }} {{ macros.github_install_archery()|indent }} {{ macros.github_configure_aws_credentials()|indent }} - name: Execute Docker Build shell: bash env: {{ macros.github_set_sccache_envvars()|indent(8) }} run: | # GH-40558: reduce ASLR to avoid TSAN crashing sudo sysctl -w vm.mmap_rnd_bits=28 source arrow/ci/scripts/util_enable_core_dumps.sh archery docker run \ -e SETUPTOOLS_SCM_PRETEND_VERSION="{{ arrow.no_rc_version }}" \ {{ flags|default("") }} \ {{ image }} \ {{ command|default("") }} - name: Dump R install logs if: always() run: | log=arrow/r/check/arrow.Rcheck/00install.out if [ -f ${log} ]; then cat ${log} fi - name: Dump R test logs if: always() run: | for log in arrow/r/check/arrow.Rcheck/tests/testthat.Rout*; do if [ -f ${log} ]; then echo ${log} cat ${log} fi done - name: Save the R test output if: always() uses: actions/upload-artifact@v4 with: name: test-output path: | arrow/r/tests/ arrow/r/arrow.Rcheck/ !arrow/r/arrow.Rcheck/00_pkg_src/ !arrow/r/arrow.Rcheck/arrow/ if-no-files-found: ignore {% if arrow.is_default_branch() %} {{ macros.github_login_dockerhub()|indent }} - name: Push Docker Image if: {{ push|default("true") }} shell: bash run: archery docker push {{ image }} {% endif %}