forked from openPMD/openPMD-api
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
114 lines (103 loc) · 3.18 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
language: python
branches:
only:
- wheels
env:
global:
- OPENPMD_GIT_REF="0.14.3"
- CIBW_PROJECT_REQUIRES_PYTHON=">=3.6"
# Install dependencies on Linux and OSX
- CIBW_BEFORE_BUILD="bash -x .github/library_builders.sh"
# for the openPMD-api build, CMake shall search for
# static dependencies of HDF5 and ADIOS1 (see setup.py)
- CIBW_ENVIRONMENT="HDF5_USE_STATIC_LIBRARIES='ON' ADIOS_USE_STATIC_LIBS='ON'"
# Show a bit more output (pip -v)
- CIBW_BUILD_VERBOSITY="1"
jobs:
include:
# perform a linux ARMv8 build
# note: takes >50min, so we need to split
- services: docker
arch: arm64
dist: focal
env:
- CIBW_BUILD="*_aarch64"
- CIBW_SKIP="cp38-* cp39-* pp36-* pp37-* cp310-* *-musllinux_*"
- services: docker
arch: arm64
dist: focal
env:
- CIBW_BUILD="*_aarch64"
- CIBW_SKIP="cp36-* cp37-* pp36-* pp37-* cp310-* *-musllinux_*"
- services: docker
arch: arm64
dist: focal
env:
- CIBW_BUILD="*_aarch64"
- CIBW_SKIP="cp38-* cp39-* cp36-* cp37-* cp310-* *-musllinux_*"
# perform a linux PPC64LE build
- services: docker
arch: ppc64le
dist: focal
env:
- CIBW_BUILD="cp36-manylinux_ppc64le"
- services: docker
arch: ppc64le
dist: focal
env:
- CIBW_BUILD="cp37-manylinux_ppc64le"
- services: docker
arch: ppc64le
dist: focal
env:
- CIBW_BUILD="cp38-manylinux_ppc64le"
- services: docker
arch: ppc64le
dist: focal
env:
- CIBW_BUILD="cp39-manylinux_ppc64le"
# - services: docker
# arch: ppc64le
# dist: focal
# env:
# - CIBW_BUILD="cp310-manylinux_ppc64le"
# perform a linux S390X build
# blocked by https://github.com/GTkorvo/dill/issues/15
#- services: docker
# arch: s390x
# dist: focal
# env:
# - CIBW_BUILD="*_s390x"
# and a build for old macOS versions (10.13 with xcode9.4.1 ~2017)
# - os: osx
# osx_image: xcode9.4
# language: shell
# python: 3.6
install:
- git clone --branch ${OPENPMD_GIT_REF} --depth 1 https://github.com/openPMD/openPMD-api.git src
- cp library_builders.sh src/.github/
- python3 -m pip install git+https://github.com/ax3l/cibuildwheel.git@fix-ppc64leNetworkTravis
# twine & cryptography: see
# https://github.com/scikit-build/cmake-python-distributions/blob/4730aeee240917303f293dffc89a8d8d5a4787c4/requirements-deploy.txt
# https://github.com/pyca/cryptography/issues/6086
- python3 -m pip install twine cryptography~=3.3.2
- python3 -m pip install "patch==1.*"
# Download & Apply Patches
#before_script:
# - mkdir -p src/.patch
# - cd src/.patch
# - curl -sOL https://gist.githubusercontent.com/ax3l/4db2f1744e0e28e6c013ee4e752b3cb7/raw/324bdb60894d51608a48890573654e10e1b1c3a0/setupversion.patch
# - cd ..
# - python3 -m patch .patch/setupversion.patch
# - cd ..
script:
- cd src
- python3 -m cibuildwheel --output-dir ../wheelhouse
- cd ..
deploy:
- provider: script
script: python3 -m twine upload --skip-existing wheelhouse/*
skip_cleanup: true
on:
repo: ${TRAVIS_REPO_SLUG}
branch: wheels