blob: d20d78307b0f474f3d415b14bec7c1583adb06be [file] [log] [blame]
# 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() }}
{% set use_conda = use_conda|default(False) %}
# env: is generated by macros.github_header()
# Current oldest supported version according to https://endoflife.date/macos
MACOSX_DEPLOYMENT_TARGET: "14.0"
jobs:
verify:
name: "Verify release candidate on macOS"
runs-on: {{ github_runner|default("macos-latest") }}
{% if env is defined %}
env:
{% for key, value in env.items() %}
{{ key }}: {{ value }}
{% endfor %}
{% endif %}
steps:
{{ macros.github_checkout_arrow(fetch_depth=0)|indent }}
{% if not use_conda %}
- name: Install System Dependencies
shell: bash
run: |
{% if github_runner in ("macos-14", "macos-latest") %}
# pkg-config formula is deprecated but it's still installed
# in GitHub Actions runner now. We can remove this once
# pkg-config formula is removed from GitHub Actions runner.
brew uninstall pkg-config || :
brew uninstall pkg-config@0.29.2 || :
{% endif %}
brew bundle --file=arrow/cpp/Brewfile
brew bundle --file=arrow/c_glib/Brewfile
# For Meson.
# See also: https://github.com/mesonbuild/meson/issues/7701
pkgconf="$(brew --prefix pkgconf)/bin/pkgconf"
if [ -x "${pkgconf}" ]; then
echo "PKG_CONFIG=${pkgconf}" >> $GITHUB_ENV
fi
# For reproducible source archive verification
brew install gzip
{% endif %}
- name: Run verification
shell: bash
env:
TEST_DEFAULT: 0
TEST_{{ target|upper }}: 1
{% if use_conda %}
{% if target == "integration" %}
# JPype doesn't work with Python 3.13.
# See also:
# * https://discuss.python.org/t/api-for-python-3-13-prevents-use-of-3rd-party-gc-allocators/62709/5
# * GH-44386
# * GH-44389
PYTHON_VERSION: "3.12"
{% endif %}
USE_CONDA: 1
{% else %}
GTest_SOURCE: SYSTEM
{% if target == "cpp" %}
TEST_SOURCE_REPRODUCIBLE: 1
{% endif %}
{% endif %}
run: |
version={{ release|default("") }}
rc={{ rc|default("") }}
if [ -n "${version}" ] && [ -n "${rc}" ]; then
args=("${version}" "${rc}")
GITHUB_REPOSITORY=apache/arrow
else
args=()
GITHUB_REPOSITORY={{ arrow.github_repo }}
fi
arrow/dev/release/verify-release-candidate.sh "${args[@]}"