forked from brian-team/brian2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
141 lines (124 loc) · 4.52 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
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
# CI configuration for Windows tests on appveyor
# Based on Olivier Grisel's python-appveyor-demo
environment:
global:
# SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
# /E:ON and /V:ON options are not enabled in the batch script intepreter
# See: http://stackoverflow.com/a/13751649/163740
CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\dev\\continuous-integration\\appveyor\\run_with_env.cmd"
matrix:
- PYTHON: "C:\\Miniconda"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "TRUE"
- PYTHON: "C:\\Miniconda35"
PYTHON_VERSION: "3.5"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "FALSE"
CONDA_PY: "35"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "FALSE"
- PYTHON: "C:\\Miniconda35-x64"
PYTHON_VERSION: "3.5"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
CONDA_PY: "35"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "FALSE"
- PYTHON: "C:\\Miniconda36"
PYTHON_VERSION: "3.6"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "FALSE"
CONDA_PY: "36"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "FALSE"
- PYTHON: "C:\\Miniconda36-x64"
PYTHON_VERSION: "3.6"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
CONDA_PY: "36"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "FALSE"
- PYTHON: "C:\\Miniconda"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "FALSE"
CONDA_PY: "27"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "1"
- PYTHON: "C:\\Miniconda"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "FALSE"
DO_CONDA_BUILD: "FALSE"
SPLIT_RUN: "2"
- PYTHON: "C:\\Miniconda-x64"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
CONDA_PY: "27"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "1"
- PYTHON: "C:\\Miniconda-x64"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
DO_CONDA_BUILD: "FALSE"
SPLIT_RUN: "2"
- PYTHON: "C:\\Miniconda-x64"
PYTHON_VERSION: "2.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "TRUE"
install:
# Add the paths
- 'set PATH=%PYTHON%;%PYTHON%\Library\bin;%PYTHON%\Scripts;%PATH%'
# Check that we have the expected version and architecture for Python
- 'python --version'
- 'python -c "import struct; print(struct.calcsize(''P'') * 8)"'
# Install the build dependencies of the project via conda
- 'appveyor-retry conda update --yes conda'
# Use the conda-forge channel
- 'conda config --append channels conda-forge'
- 'set PYTHON_PACKAGES=numpy nose "sphinx<1.6.3" "sympy!=1.1.0" pyparsing jinja2 ipython setuptools cython "py-cpuinfo=3" "gsl>1.15"'
# Install the weave package for Python 2
- 'if "%PYTHON_VERSION:~0,1%" == "2" set PYTHON_PACKAGES=%PYTHON_PACKAGES% weave scipy'
- 'if "%PYTHON_VERSION:~0,1%" == "3" set PYTHON_PACKAGES=%PYTHON_PACKAGES% scipy'
# Create the test environment
- 'appveyor-retry conda install --quiet --yes python=%PYTHON_VERSION% %PYTHON_PACKAGES%'
# For faster tests, only build conda packages for the master branch or pull requests
- 'if "%APPVEYOR_PULL_REQUEST_NUMBER%" == "" if not "%APPVEYOR_REPO_BRANCH%" == "master" set DO_CONDA_BUILD=FALSE'
build: false # Not a C# project, build stuff at the test step instead.
test_script:
# Run the test suite
- '%CMD_IN_ENV% python -c "import sys; print(sys.executable)"'
- '%CMD_IN_ENV% python setup.py install --single-version-externally-managed --record=record.txt'
- 'set SRC_DIR=%CD%'
- 'cd \'
# Since "CMD_IN_ENV" assumes we are in the source directory we cannot use it
# here. We therefore copy its content and use the correct path
- 'cmd /E:ON /V:ON /C %SRC_DIR%\dev\continuous-integration\appveyor\run_with_env.cmd python %SRC_DIR%\dev\continuous-integration\run_test_suite.py'
after_test:
- 'IF "%DO_CONDA_BUILD%" == "TRUE" (
appveyor-retry pip install wheel &&
cd %SRC_DIR% &&
%CMD_IN_ENV% python setup.py bdist_wheel &&
appveyor-retry %CMD_IN_ENV% conda install --yes --quiet conda-build pip &&
appveyor-retry %CMD_IN_ENV% conda install --yes --quiet anaconda-client &&
%CMD_IN_ENV% conda build --quiet -c conda-forge dev\conda-recipe
)'
artifacts:
# Archive the generated conda package in the ci.appveyor.com build report.
- path: '*.tar.bz2'
name: conda package
- path: dist\*
name: PyPI binaries