This repository was archived by the owner on Aug 30, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathposix.yml
127 lines (109 loc) · 4.18 KB
/
posix.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
parameters:
name: ""
vmImage: ""
timeoutInMinutes: 60
matrix: []
jobs:
- job: ${{ parameters.name }}
timeoutInMinutes: ${{ parameters.timeoutInMinutes }}
pool:
vmImage: ${{ parameters.vmImage }}
variables:
REPO_DIR: "numpy"
PLAT: "x86_64"
CYTHON_BUILD_DEP: "cython==0.29.30"
NIGHTLY_BUILD_COMMIT: "main"
TEST_DEPENDS: "pytest hypothesis cffi pytz"
JUNITXML: "test-data.xml"
TEST_DIR: "tmp_for_test"
strategy:
matrix:
${{ insert }}: ${{ parameters.matrix }}
steps:
- checkout: self
submodules: true
- task: UsePythonVersion@0
inputs:
versionSpec: $(AZURE_PYTHON_VERSION)
displayName: Set python version from AZURE
condition: ne( coalesce (variables['AZURE_PYTHON_VERSION'], 'NONE'), 'NONE')
- task: UsePythonVersion@0
inputs:
versionSpec: $(MB_PYTHON_VERSION)
displayName: Set python version from MB
condition: eq( coalesce (variables['AZURE_PYTHON_VERSION'], 'NONE'), 'NONE')
- bash: |
set -e
if [ "$BUILD_REASON" == "Schedule" ]; then
BUILD_COMMIT=$NIGHTLY_BUILD_COMMIT
fi
echo "Building numpy@$BUILD_COMMIT"
echo "##vso[task.setvariable variable=BUILD_COMMIT]$BUILD_COMMIT"
# Platform variables used in multibuild scripts
if [ `uname` == 'Darwin' ]; then
echo "##vso[task.setvariable variable=TRAVIS_OS_NAME]osx"
echo "##vso[task.setvariable variable=MACOSX_DEPLOYMENT_TARGET]10.14"
else
echo "##vso[task.setvariable variable=TRAVIS_OS_NAME]linux"
fi
# Store original Python path to be able to create test_venv pointing
# to same Python version.
PYTHON_EXE=`which python`
echo "##vso[task.setvariable variable=PYTHON_EXE]$PYTHON_EXE"
displayName: Define build env variables
- bash: |
set -ex
echo $BUILD_COMMIT
pip install virtualenv wheel
BUILD_DEPENDS="$CYTHON_BUILD_DEP"
source multibuild/common_utils.sh
source multibuild/travis_steps.sh
source extra_functions.sh
# Setup build dependencies
before_install
clean_code $REPO_DIR $BUILD_COMMIT
./patch_code.sh $REPO_DIR
build_wheel $REPO_DIR $PLAT
displayName: Build wheel
- bash: |
set -ex
source multibuild/common_utils.sh
source multibuild/travis_steps.sh
source extra_functions.sh
setup_test_venv
install_run $PLAT
teardown_test_venv
displayName: Install wheel and test
- bash: |
echo "##vso[task.prependpath]$CONDA/bin"
sudo chown -R $USER $CONDA
displayName: Add conda to PATH
- bash: conda install -q -y anaconda-client
displayName: Install anaconda-client
- bash: |
set -e
if [ "$BUILD_COMMIT" == "main" ]; then
ANACONDA_ORG="scipy-wheels-nightly"
TOKEN="$MAPPED_NUMPY_NIGHTLY_UPLOAD_TOKEN"
else
ANACONDA_ORG="multibuild-wheels-staging"
TOKEN="$MAPPED_NUMPY_STAGING_UPLOAD_TOKEN"
fi
if [ "$TOKEN" == "" -o "${TOKEN:0:7}" == "\$(NUMPY" ]; then
echo "##[warning] Could not find anaconda.org upload token in secret variables"
TOKEN=""
fi
echo "##vso[task.setvariable variable=TOKEN]$TOKEN"
echo "##vso[task.setvariable variable=ANACONDA_ORG]$ANACONDA_ORG"
displayName: Retrieve secret upload token
env:
# Secret variables need to mapped to env variables explicitly:
MAPPED_NUMPY_NIGHTLY_UPLOAD_TOKEN: $(NUMPY_NIGHTLY_UPLOAD_TOKEN)
MAPPED_NUMPY_STAGING_UPLOAD_TOKEN: $(NUMPY_STAGING_UPLOAD_TOKEN)
- bash: |
set -e
echo uploading wheelhouse/*.whl
anaconda -t $TOKEN upload --skip -u $ANACONDA_ORG wheelhouse/*.whl
echo "PyPI-style index: https://pypi.anaconda.org/$ANACONDA_ORG/simple"
displayName: Upload to anaconda.org (only if secret token is retrieved)
condition: ne(variables['TOKEN'], '')