name: CI (Windows) on: [push, pull_request] env: VCPKGRS_DYNAMIC: 1 jobs: build_and_test: strategy: fail-fast: false matrix: version: - stable - nightly name: ${{ matrix.version }} - x86_64-pc-windows-msvc runs-on: windows-latest steps: - uses: actions/checkout@master - name: Install ${{ matrix.version }} uses: actions-rs/toolchain@v1 with: toolchain: ${{ matrix.version }}-x86_64-pc-windows-msvc profile: minimal override: true - name: Generate Cargo.lock uses: actions-rs/cargo@v1 with: command: update - name: Cache cargo registry uses: actions/cache@v1 with: path: ~/.cargo/registry key: ${{ matrix.version }}-x86_64-pc-windows-msvc-cargo-registry-${{ hashFiles('**/Cargo.lock') }} - name: Cache cargo index uses: actions/cache@v1 with: path: ~/.cargo/git key: ${{ matrix.version }}-x86_64-pc-windows-msvc-cargo-index-${{ hashFiles('**/Cargo.lock') }} - name: Cache cargo build uses: actions/cache@v1 with: path: target key: ${{ matrix.version }}-x86_64-pc-windows-msvc-cargo-build-${{ hashFiles('**/Cargo.lock') }} - name: Cache vcpkg package uses: actions/cache@v1 id: cache-vcpkg with: path: C:\vcpkg key: windows_x64-${{ matrix.version }}-vcpkg - name: Install OpenSSL if: steps.cache-vcpkg.outputs.cache-hit != 'true' run: | vcpkg integrate install vcpkg install openssl:x64-windows - name: check build uses: actions-rs/cargo@v1 with: command: check args: --all --bins --examples --tests - name: tests uses: actions-rs/cargo@v1 with: command: test args: --all --all-features --no-fail-fast -- --nocapture --skip=test_h2_content_length --skip=test_reading_deflate_encoding_large_random_rustls --skip=test_params --skip=test_simple --skip=test_expect_continue --skip=test_http10_keepalive --skip=test_slow_request