version: 2.2.2.{build} image: Visual Studio 2015 platform: x64 configuration: # a trick to construct a build matrix with multiple Python versions - 3.6 environment: matrix: - COMPILER: MSVC - COMPILER: MINGW clone_depth: 50 install: - git submodule update --init --recursive # get `compute` folder - set PATH=%PATH:C:\Program Files\Git\usr\bin;=% # delete sh.exe from PATH (mingw32-make fix) - set PATH=C:\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev0\mingw64\bin;%PATH% - set PYTHON_VERSION=%CONFIGURATION% - ps: >- switch ($env:PYTHON_VERSION) { "2.7" {$env:MINICONDA = """C:\Miniconda-x64"""} "3.4" {$env:MINICONDA = """C:\Miniconda34-x64"""} "3.5" {$env:MINICONDA = """C:\Miniconda35-x64"""} "3.6" {$env:MINICONDA = """C:\Miniconda36-x64"""} "3.7" {$env:MINICONDA = """C:\Miniconda37-x64"""} default {$env:MINICONDA = """C:\Miniconda37-x64"""} } - set PATH=%MINICONDA%;%MINICONDA%\Scripts;%PATH% - set SKLEARN_SITE_JOBLIB=true # temp fix for joblib warning in examples - ps: $env:LGB_VER = (Get-Content VERSION.txt).trim() - conda config --set always_yes yes --set changeps1 no - conda update -q conda - conda create -q -n test-env python=%PYTHON_VERSION% joblib matplotlib nose numpy pandas pytest python-graphviz scikit-learn scipy - activate test-env build_script: - cd %APPVEYOR_BUILD_FOLDER%\python-package - IF "%COMPILER%"=="MINGW" ( python setup.py install --mingw) ELSE ( python setup.py install) test_script: - pytest %APPVEYOR_BUILD_FOLDER%\tests\python_package_test - cd %APPVEYOR_BUILD_FOLDER%\examples\python-guide - ps: >- @("import matplotlib", "matplotlib.use('Agg')") + (Get-Content "plot_example.py") | Set-Content "plot_example.py" # prevent interactive window mode (Get-Content "plot_example.py").replace('graph.render(view=True)', 'graph.render(view=False)') | Set-Content "plot_example.py" - ps: >- foreach ($file in @(Get-ChildItem *.py)) { python $file if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) } } # run all examples