forked from coala/coala-bears
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
184 lines (161 loc) · 4.74 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
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
image: Visual Studio 2015
environment:
global:
PIP_CACHE_DIR: C:\pip_cache
PIP_DISABLE_PIP_VERSION_CHECK: 1
# Needed if pip uninstall is used
PIP_YES: 1
YARN_GPG: 'no'
FudgeCI: $(APPVEYOR_BUILD_FOLDER)\.ci
NUGET_EXE_NO_PROMPT: 1
NUGET_HTTP_CACHE_PATH: C:\nuget_http_cache
CHOCO_CACHE_DIR: C:\choco_cache
MSYS_ROOT: C:\msys64
MSYS_BIN: $(MSYS_ROOT)\usr\bin
JAVA_HOME: C:\jdk
MSSDK_ROOT: C:\Program Files\Microsoft SDKs
VS_ROOT: C:\Program Files (x86)\Microsoft Visual Studio
VIRTUALENV_NO_DOWNLOAD: 1
VIRTUALENV_NO_PIP: 1
VIRTUALENV_NO_SETUPTOOLS: 1
# Uncomment to debug tox venv problems
# VIRTUALENV_VERBOSE: 1
GOPATH: C:\gopath
# A problem with store_env_in_registry.py means this needs to be explicit
PSModulePath: >-
$(PSModulePath);C:\Program Files (x86)\WindowsPowerShell\Modules;
PATH: >-
C:\python;C:\python\Scripts;$(PATH);$(MSYS_BIN);
C:\tools\fudge\tools;
C:\ruby\bin;
C:\jdk\bin;
$(GOPATH)\bin;
$(APPVEYOR_BUILD_FOLDER)\node_modules\.bin;
$(APPVEYOR_BUILD_FOLDER)\vendor\bin;
JL_PKG: CoalaBears
JULIA_PROJECT: '@.'
TOX_FEATURES: check-noskip-codecov
BEAR_LIST: astyle cppcheck xmllint
TOX_TEST_SELECTORS: pip-noreqs-npm-gem-go-perl-php-java8-adhoc
TOXENV: py$(PYTHON_MINOR_NODOTS)-$(TOX_TEST_SELECTORS)-$(TOX_FEATURES)-win
matrix:
- PYTHON_VERSION: 3.6
PYTHON_MINOR_NODOTS: 36
- PYTHON_VERSION: 3.5
PYTHON_MINOR_NODOTS: 35
- PYTHON_VERSION: 3.4
PYTHON_MINOR_NODOTS: 34
platform:
- x86
- x64
cache:
- C:\nuget_http_cache
- C:\choco_cache
- "C:\\pip_cache"
- "node_modules"
- "C:\\Users\\appveyor\\AppData\\Local\\coala-bears\\coala-bears"
- "C:\\Users\\appveyor\\AppData\\Roaming\\nltk_data"
- "%LOCALAPPDATA%\\Composer"
branches:
except:
- /^sils\/.*/
# This forces unix style line endings in the clone, which is necessary to
# avoid warning regarding EOLs when running git diff on Windows
init: git config --global core.autocrlf false
install:
# Show initial state
- powershell -c "$PSVersionTable"
# Uncomment to debug
# printenv
- python --version
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
- python -m pip --version
- python -c "import setuptools; print(setuptools.__version__)"
- node --version
- which npm
- npm --version
- npm config get prefix
- ruby --version
- bundler --version
- go version
- which java
- java -version
- which javac
- javac -version
# JAVA_HOME set above is not populated yet
- echo %JAVA_HOME%
- ls %JAVA_HOME%/bin/java & exit 0
- which perl
- perl --version
- which gcc & exit 0
- gcc --version & exit 0
- which cl & exit 0
# Stores environment in registry, with minor tweaks
- python .ci/store_env_in_registry.py
- refreshenv
# Set up AppVeyor product versions, and install dummy choco entries for them
- ps: . .ci/FudgeCI.ps1; Initialize-AppVeyorVM
- refreshenv
- echo %PATH%
# Avoid tools finding and using MinGW
- mv C:\MinGW %TEMP%
# TODO: Avoid tools finding and using Visual Studio
# Show updated SOE; versions should be as defined in top of the Fudgefile
- python --version
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
- node --version
- which npm
- npm --version
- npm config get prefix
- go version
- ruby --version
- which java
- java -version
- which javac
- javac -version
- ls %JAVA_HOME%/bin/java
- perl --version
- which ppm
- ppm --version
- which gcc & exit 0
- gcc --version & exit 0
- "%MSYS_BIN%\\date.exe"
- cp .ci/choco.config
%ChocolateyInstall%\config\chocolatey.config
# Install remainer of the Fudgefile with chocolatey using Fudge
- ps: . .ci/Fudge.ps1 install
- refreshenv
- echo %PATH%
- ps: if ($env:APPVEYOR_JOB_NUMBER -eq 1) { . .ci/PSLint.ps1 }
# Check that we have the expected version and architecture for Python
- "python --version"
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
# Confirm other versions
- node --version
- which npm
- npm --version
- npm config get prefix
- go version
- ruby --version
- perl --version
- which java
- java -version
- which javac
- javac -version
- ls %JAVA_HOME%/bin/java
# Newly installed versions
- which composer & exit 0
- composer --version & exit 0
- ppm --version & exit 0
- "%MSYS_BIN%\\date.exe"
build: false # Not a C# project, build stuff at the test step instead.
test_script:
- python -m pip --version
- python -c "import setuptools; print(setuptools.__version__)"
- "sed -i 's/^envlist.*$/envlist: %TOXENV%/' tox.ini"
- python -m tox --sitepackages
- python setup.py install
- rm -rf .tox
- coala --ci
matrix:
fast_finish: true