name: windows on: push: branches: - master pull_request: branches: - '*' jobs: latest: strategy: matrix: os: [windows-2016, windows-2019] vs: [2017, 2019] test_task: [test] exclude: - os: windows-2016 vs: 2019 - os: windows-2019 vs: 2017 runs-on: ${{ matrix.os }} steps: - name: Install libraries with vcpkg run: | vcpkg --triplet x64-windows install %dependencies% || ( sleep 4 && vcpkg --triplet x64-windows install %dependencies% ) || ( sleep 25 && vcpkg --triplet x64-windows install %dependencies% ) env: dependencies: openssl readline zlib - name: Install libraries with chocolatey run: choco install winflexbison3 - name: Checkout # not using actions/checkout because it's unstable. run: git clone --depth=50 https://github.com/ruby/ruby . - name: configure run: | call "C:\Program Files (x86)\Microsoft Visual Studio\${{ matrix.vs }}\Enterprise\VC\Auxiliary\Build\vcvars64.bat" win32/configure.bat --without-ext=+,dbm,gdbm --enable-bundled-libffi --with-opt-dir=C:/vcpkg/installed/x64-windows - name: nmake run: | call "C:\Program Files (x86)\Microsoft Visual Studio\${{ matrix.vs }}\Enterprise\VC\Auxiliary\Build\vcvars64.bat" set YACC=win_bison nmake up nmake - name: nmake test run: | call "C:\Program Files (x86)\Microsoft Visual Studio\${{ matrix.vs }}\Enterprise\VC\Auxiliary\Build\vcvars64.bat" nmake ${{ matrix.test_task }}