forked from brian-team/brian2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathappveyor.yml
128 lines (113 loc) · 4.17 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
# 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:\\Miniconda37-x64"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "TRUE"
FLOAT_DTYPE_32: "TRUE"
- PYTHON: "C:\\Miniconda37"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "TRUE"
- PYTHON: "C:\\Miniconda37"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "FALSE"
CONDA_PY: "37"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "1"
- PYTHON: "C:\\Miniconda37"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "32"
platform: x86
STANDALONE: "FALSE"
DO_CONDA_BUILD: "FALSE"
SPLIT_RUN: "2"
- PYTHON: "C:\\Miniconda37-x64"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
CONDA_PY: "37"
DO_CONDA_BUILD: "TRUE"
SPLIT_RUN: "1"
- PYTHON: "C:\\Miniconda37-x64"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
DO_CONDA_BUILD: "FALSE"
SPLIT_RUN: "2"
- PYTHON: "C:\\Miniconda37-x64"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
CONDA_PY: "37"
DO_CONDA_BUILD: "FALSE"
FLOAT_DTYPE_32: "TRUE"
SPLIT_RUN: "1"
- PYTHON: "C:\\Miniconda37-x64"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "64"
platform: x64
STANDALONE: "FALSE"
DO_CONDA_BUILD: "FALSE"
FLOAT_DTYPE_32: "TRUE"
SPLIT_RUN: "2"
- PYTHON: "C:\\Miniconda37-x64"
PYTHON_VERSION: "3.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)"'
# Use the conda-forge channel
- 'conda config --append channels conda-forge'
# Install the build dependencies of the project via conda
- 'appveyor-retry conda update -c conda-forge --yes conda'
- 'set PYTHON_PACKAGES=pytest "sympy>=1.1.1" pyparsing jinja2 ipython setuptools cython "py-cpuinfo>=3" "gsl>1.15" sphinx numpy'
# 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" (
conda config --set restore_free_channel 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