This repository has been archived by the owner on Jan 13, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
azure-pipelines.yml
158 lines (156 loc) · 5.45 KB
/
azure-pipelines.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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
jobs:
- job: 'TestLinux'
pool:
vmImage: 'ubuntu-latest'
strategy:
matrix:
Python39-Linux:
python.version: '3.9'
maxParallel: 3
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
architecture: 'x64'
- script: sudo apt-get update
displayName: 'AptGet Update'
- script: sudo apt-get install -y inkscape
displayName: 'Install Inkscape'
- script: sudo apt-get install -y pandoc
displayName: 'Install Pandoc'
- script: sudo apt-get install -y texlive texlive-latex-extra texlive-xetex dvipng
displayName: 'Install Latex'
- script: sudo apt-get install -y libgeos-dev libproj-dev proj-data graphviz libblas-dev liblapack-dev
displayName: 'Install Geos packages'
- script: |
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 10
ls /usr/bin/llvm*
export LLVM_CONFIG=/usr/bin/llvm-config-10
displayName: 'Install llvmlite'
- script: sudo apt-get install -y p7zip-full
displayName: 'Install 7z, rar'
- script: sudo apt-get install -y graphviz
displayName: 'Install Graphviz'
- script: pip install --upgrade pip setuptools wheel
displayName: 'Install tools'
- script: pip install numpy
displayName: 'Install numpy'
- script: |
export LLVM_CONFIG=/usr/bin/llvm-config-10
pip install -r requirements.txt
displayName: 'Install Requirements'
- script: python -u setup.py unittests
displayName: 'Runs Unit Tests'
- script: python -u setup.py bdist_wheel
displayName: 'Build Package'
- script: |
python -m pip install cibuildwheel
export CIBW_MANYLINUX_X86_64_IMAGE="manylinux2014"
export CIBW_BEFORE_BUILD="pip install ."
export CIBW_BEFORE_BUILD="pip install pybind11 cython numpy scipy pyquickhelper"
export CIBW_BUILD="cp37-manylinux_x86_64 cp38-manylinux_x86_64 cp39-manylinux_x86_64"
python -m cibuildwheel --output-dir dist/wheelhouse --platform linux
displayName: 'Build Package manylinux2014'
#- script: python -u setup.py build_sphinx
# displayName: 'Builds Documentation'
- task: PublishPipelineArtifact@0
inputs:
artifactName: 'wheel-linux-$(python.version)'
targetPath: 'dist'
- job: 'TestMac'
pool:
vmImage: 'macOS-latest'
strategy:
matrix:
Python39-MacOs:
python.version: "3.9"
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
architecture: 'x64'
- script: gcc --version
displayName: 'gcc version'
- script: brew update
displayName: 'brew update'
- script: export
displayName: 'export'
- script: gcc --version
displayName: 'gcc version'
- script: brew install p7zip
displayName: 'Install p7zip'
- script: brew install pandoc
displayName: 'Install Pandoc'
- script: brew install graphviz
continueOnError: true
displayName: 'Install Graphviz'
- script: brew install cairo pango gdk-pixbuf libffi
displayName: 'Install cairo pango gdk-pixbuf libffi'
- bash: echo "##vso[task.prependpath]$CONDA/bin"
displayName: Add conda to PATH.
- bash: sudo chown -R $USER $CONDA
displayName: Take ownership of conda installation
#- script: brew install --cask mactex
# continueOnError: true
# displayName: 'Install latex'
- bash: conda install -y -c conda-forge numpy scipy
displayName: Install numpy scipy
- bash: conda install -y -c conda-forge llvmlite numba
displayName: Install llvmlite numba
- bash: conda install -y -c conda-forge pyproj cartopy shapely
displayName: Install pyproj cartopy shapely
- script: pip install -r requirements.txt
displayName: 'Install Requirements'
- script: export PYTHONPATH=src
displayName: 'PYTHONPATH=src'
- script: python -u setup.py unittests
displayName: 'Runs Unit Tests'
- script: python -u setup.py bdist_wheel
displayName: 'Build Package'
- script: |
python -m pip install cibuildwheel
export CIBW_BEFORE_BUILD="pip install ."
export CIBW_BEFORE_BUILD="pip install pybind11 cython numpy scipy pyquickhelper"
export CIBW_BUILD="cp37-macosx_x86_64 cp38-macosx_x86_64 cp39-macosx_x86_64"
python -m cibuildwheel --output-dir dist/wheelhouse
displayName: 'Build Package many'
- task: PublishPipelineArtifact@0
- task: PublishPipelineArtifact@0
inputs:
artifactName: 'wheel-mac-$(python.version)'
targetPath: 'dist'
- job: 'TestWindows'
pool:
vmImage: 'windows-latest'
strategy:
matrix:
Python39-Linux:
python.version: '3.9'
maxParallel: 3
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
architecture: 'x64'
- script: python -m pip install --upgrade pip setuptools wheel
displayName: 'Install tools'
- script: pip install -r requirements.txt
displayName: 'Install Requirements'
- script: python -c "import platform;print(platform.version())"
displayName: 'Platform'
- script: |
python -u setup.py bdist_wheel
displayName: 'Build Package'
- script: |
python -m pip install cibuildwheel
set CIBW_BEFORE_BUILD=pip install .
set CIBW_BEFORE_BUILD=pip install pybind11 cython numpy scipy pyquickhelper
set CIBW_BUILD=cp37-win_amd64 cp38-win_amd64 cp39-win_amd64
python -m cibuildwheel --output-dir dist/wheelhouse
displayName: 'Build Package many'
- task: PublishPipelineArtifact@0
inputs:
artifactName: 'wheel-linux-$(python.version)'
targetPath: 'dist'