From 83e9c836b1e92093ec1b603359660b0028e8cdd6 Mon Sep 17 00:00:00 2001 From: Michael Jackson Date: Wed, 22 May 2024 17:18:23 -0400 Subject: [PATCH] GitHub CI: Start working on getting a Windows CI working Signed-off-by: Michael Jackson --- .github/workflows/windows.yml | 61 +++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 .github/workflows/windows.yml diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml new file mode 100644 index 00000000..ca298156 --- /dev/null +++ b/.github/workflows/windows.yml @@ -0,0 +1,61 @@ +name: windows + +on: + pull_request: + branches: + - develop + - master + push: + branches: + - develop + - master + +jobs: + build: + env: + VCPKG_BINARY_SOURCES: 'clear;nuget,GitHub,readwrite' + strategy: + fail-fast: false + matrix: + os: + - windows-2022 + toolset: + - v142 + - v143 + runs-on: ${{matrix.os}} + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: true + - name: Add C++ Problem Matcher + uses: ammaraskar/msvc-problem-matcher@0.2.0 + - name: Setup Build Environment + uses: ilammy/msvc-dev-cmd@v1.12.1 + with: + vsversion: 2022 + - name: Setup NuGet Credentials + shell: bash + run: | + `vcpkg fetch nuget | tail -n 1` \ + sources add \ + -source "https://nuget.pkg.github.com/BlueQuartzSoftware/index.json" \ + -storepasswordincleartext \ + -name "GitHub" \ + -username "BlueQuartzSoftware" \ + -password "${{secrets.GITHUB_TOKEN}}" + `vcpkg fetch nuget | tail -n 1` \ + setapikey "${{secrets.GITHUB_TOKEN}}" \ + -source "https://nuget.pkg.github.com/BlueQuartzSoftware/index.json" + - name: Install Sphinx + run: | + pip install sphinx myst-parser sphinx-markdown-tables sphinx_rtd_theme numpy + - name: Configure + run: | + cmake --preset ci-windows-${{matrix.toolset}} ${{github.workspace}} -T ${{matrix.toolset}} + - name: Build + run: | + cmake --build --preset ci-windows-${{matrix.toolset}} + - name: Test + run: | + ctest --preset ci-windows-${{matrix.toolset}}