version: 3.0.0.{build}-test shallow_clone: true skip_branch_with_pr: true matrix: fast_finish: true environment: LUAROCKS_VER: 3.0.0 matrix: # quick tests - LUAV: "2.1" LUAT: "luajit" COMPILER: "vs" FILES: "" EXCLUDE: "integration,unit" # Lua 5.4 tests - LUAV: "5.4" LUAT: "lua" COMPILER: "vs" FILES: "" EXCLUDE: "integration,quick" TESTTYPE: "unit" - LUAV: "5.4" LUAT: "lua" COMPILER: "vs" FILES: "" EXCLUDE: "unit,quick" - LUAV: "5.4" LUAT: "lua" COMPILER: "mingw" FILES: "spec//build_spec.lua" EXCLUDE: "" # LuaJIT 2.1 tests - LUAV: "2.1" LUAT: "luajit" COMPILER: "vs" FILES: "" EXCLUDE: "integration,quick" TESTTYPE: "unit" - LUAV: "2.1" LUAT: "luajit" COMPILER: "vs" FILES: "" EXCLUDE: "unit,quick" - LUAV: "2.1" LUAT: "luajit" COMPILER: "mingw" FILES: "spec//build_spec.lua" EXCLUDE: "" init: # Setup Lua development/build environment # Make VS 2015 command line tools available - call "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %platform% # Add MinGW compiler to the path - set PATH=C:\MinGW\bin;%PATH% before_build: - set PATH=C:\Python37;C:\Python37\Scripts;%PATH% # Add directory containing 'pip' to PATH - IF NOT EXIST lua_install-%LUAV%\bin\activate.bat ( pip install --upgrade certifi ) - FOR /F "tokens=* USEBACKQ" %%F IN (`python -c "import certifi;print(certifi.where())"`) DO ( SET SSL_CERT_FILE=%%F ) - IF NOT EXIST lua_install-%LUAV%\bin\activate.bat ( pip install hererocks ) - IF NOT EXIST lua_install-%LUAV%\bin\activate.bat ( hererocks lua_install-%LUAV% --%LUAT% %LUAV% --luarocks latest --target=%COMPILER% ) - call lua_install-%LUAV%\bin\activate - nuget install bzip2 -OutputDirectory deps\bzip2 - nuget install zlib -OutputDirectory deps\zlib - mkdir c:\external\include - mkdir c:\external\lib - copy deps\bzip2\bzip2.1.0.6.11\build\native\include\bzlib.h c:\external\include - copy deps\bzip2\bzip2.1.0.6.11\build\native\lib\v110\win32\Debug\dynamic\cdecl\libbz2.lib c:\external\lib\bz2.lib - copy deps\bzip2\bzip2.redist.1.0.6.11\build\native\bin\v110\win32\Debug\dynamic\cdecl\libbz2.dll c:\external\lib\bz2.dll - copy deps\zlib\zlib.v120.windesktop.msvcstl.dyn.rt-dyn.1.2.8.8\build\native\include\*.h c:\external\include - copy deps\zlib\zlib.v120.windesktop.msvcstl.dyn.rt-dyn.1.2.8.8\lib\native\v120\windesktop\msvcstl\dyn\rt-dyn\Win32\MinSizeRel\zlib.dll c:\external\lib\z.dll - copy deps\zlib\zlib.v120.windesktop.msvcstl.dyn.rt-dyn.1.2.8.8\lib\native\v120\windesktop\msvcstl\dyn\rt-dyn\Win32\MinSizeRel\zlib.lib c:\external\lib\z.lib build_script: - luarocks install compat53 1> NUL 2> NUL - IF NOT EXIST lua_install-%LUAV%\bin\busted.bat ( luarocks install busted 1> NUL 2> NUL ) - IF NOT EXIST lua_install-%LUAV%\bin\luacov.bat ( luarocks install cluacov 1> NUL 2> NUL ) - luarocks install busted-htest 1> NUL 2> NUL test_script: - busted -o htest -v --lpath=.//?.lua --exclude-tags=ssh,unix,%EXCLUDE% -Xhelper lua_dir=%CD%\lua_install-%LUAV%,appveyor,%COMPILER% %FILES% - IF "%TESTTYPE%"=="unit" ( busted -o htest -v --lpath=.//?.lua --exclude-tags=ssh,unix,%EXCLUDE% -Xhelper lua_dir=%CD%\lua_install-%LUAV%,appveyor,%COMPILER%,env=full %FILES% ) after_test: - pip install codecov - luacov -c testrun/luacov.config - cd testrun && codecov -f luacov.report.out -X gcov cache: - lua_install-5.4 - lua_install-2.1 - testrun/testing_cache-5.4 - testrun/testing_cache-2.1 - testrun/testing_server-5.4 - testrun/testing_server-2.1 - testrun/binary-samples