blob: 850264266125bd97a3466a8f36b41f7d6d0ceae8 [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.
os: osx
osx_image: xcode8.3
language: generic
# don't build twice
if: tag IS blank
env:
global:
- PLAT=x86_64
- TRAVIS_TAG={{ task.tag }}
- MACOSX_DEPLOYMENT_TARGET="10.9"
- PYARROW_VERSION={{ arrow.no_rc_version }}
- PYARROW_BUILD_VERBOSE=1
- MB_PYTHON_VERSION={{ python_version }}
before_install:
- git clone https://github.com/matthew-brett/multibuild # TODO pin it
- git -C multibuild checkout 4e7a9396e9a50731bb83fc0d16bb98fb0c4032d7
- git clone --no-checkout {{ arrow.remote }} arrow
- git -C arrow fetch -t {{ arrow.remote }} {{ arrow.branch }}
- git -C arrow checkout FETCH_HEAD
# ARROW-3976 Old versions of git can cause failures when Homebrew prints a
# donation solicitation. Attempt to update git
- git --version
- brew upgrade git
# Also remove artifacts that depend on Boost
- brew uninstall boost cgal postgis sfcgal
- brew update
- brew upgrade cmake
- brew install bison flex grpc openssl llvm@7 zlib
# Remove shared grpc libraries installed by brew to make sure
# we are linked against the static ones.
- rm -f /usr/local/opt/grpc/lib/*.dylib
- export CONFIG_PATH=`pwd`/arrow/dev/tasks/python-wheels/osx-build.sh
- source multibuild/common_utils.sh
- source multibuild/travis_osx_steps.sh
- before_install
# Fix SSL TLS issue for Python 3.5 on macOS
- pip install requests[security]
install:
- mkdir -p dist
# the following functions are defined in osx-build.sh
- build_wheel arrow
# test the built wheels, remove llvm and grpc dependencies to ensure
# things are properly statically-linked
- brew uninstall --ignore-dependencies llvm@7 grpc c-ares openssl zlib
# install the built wheel and test dependencies
- install_wheel arrow
# run unit tests before removing the system libraries
- run_unit_tests arrow
# remove libz to ensure that it is properly bundled
- sudo find /usr -name libz.* -delete
# run the import tests
- run_import_tests
# move built wheels to a top level directory
- mv -v arrow/python/dist/* dist/
# reinstall openssl because travis' deployment script depends on it
- brew install openssl
deploy:
provider: releases
api_key: $CROSSBOW_GITHUB_TOKEN
file_glob: true
file: dist/*.whl
skip_cleanup: true
on:
tags: true
notifications:
email:
- {{ job.email }}