forked from nmslib/nmslib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.appveyor.yml
84 lines (81 loc) · 2.57 KB
/
.appveyor.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
version: '{build}'
# If changed sync with the command in the install section
image: Visual Studio 2019
platform:
- x64
# 32 build does not work
#- x86
environment:
global:
DISTUTILS_USE_SDK: 1
MSSdk: 1
# SSE2 is the default in recent VS, but let's keep for older versions, see, e.g.: https://github.com/weidai11/cryptopp/issues/445
ARCH: SSE2
matrix:
- PYTHON: 35
- PYTHON: 36
- PYTHON: 37
- PYTHON: 38
- PYTHON: 39
- PYTHON: 310
pypipassword:
# https://ci.appveyor.com/tools/encrypt
secure: 7hxZ+XinYPLuIS1aHZbTcA==
install:
- cmd: '"c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" %PLATFORM%'
- cmd: git config core.symlinks true
- cmd: git reset --hard
- ps: Remove-Item -Recurse -Force C:/cygwin
- ps: Remove-Item -Recurse -Force C:/cygwin64
- ps: |
if ($env:PYTHON) {
if ($env:PLATFORM -eq "x64") { $env:PYTHON = "$env:PYTHON-x64" }
$env:PATH = "C:\Python$env:PYTHON\;C:\Python$env:PYTHON\Scripts\;$env:PATH"
python -m pip install --disable-pip-version-check --upgrade pip
python -m pip install -qq setuptools six psutil
} elseif ($env:CONDA) {
if ($env:CONDA -eq "27") { $env:CONDA = "" }
if ($env:PLATFORM -eq "x64") { $env:CONDA = "$env:CONDA-x64" }
$env:PATH = "C:\Miniconda$env:CONDA\;C:\Miniconda$env:CONDA\Scripts\;$env:PATH"
conda config --set always_yes yes --set changeps1 no
conda config --add channels conda-forge
conda update -q conda
conda install -q conda-build
}
- cmd: |
ECHO Platform : %PLATFORM%
ECHO Python : %PYTHON%
ECHO PATH : %PATH%
set
python --version
python -m pip --version
build_script:
- ps: cd python_bindings
- cmd: |
python -m pip install -qq -r requirements.txt
python setup.py build_ext
python -m pip install -U .
- ps: cd ..
test_script:
- ps: cd python_bindings
- cmd: python setup.py test
- ps: cd ..
deploy_script:
- ps: |
if ($env:APPVEYOR_REPO_TAG -ne "true") {
echo "Skipping deployment because this is not a tagged commit"
return
}
# Specify account details for PyPI
echo "Deploying..."
mv .pypirc $env:USERPROFILE\\.pypirc
# Workaround required to ensure setup.py finds the .pypirc under Windows
$env:HOME=$env:USERPROFILE
# Install wheel-building support
python -m pip install --user wheel twine
# Build wheel and upload
cd python_bindings
python setup.py build_ext
python setup.py sdist bdist_wheel
python -m twine upload -r testpypi -p $env:pypipassword --skip-existing dist/*
echo "Deployment complete"