Merge pull request #2467 from mod-playerbots/test-staging #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: windows-build | |
| on: | |
| push: | |
| branches: [ "master", "test-staging" ] | |
| pull_request: | |
| branches: [ "master", "test-staging" ] | |
| concurrency: | |
| group: "windows-build-${{ github.event.pull_request.number || github.ref }}" | |
| cancel-in-progress: true | |
| jobs: | |
| windows-build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [windows-latest] | |
| runs-on: ${{ matrix.os }} | |
| name: ${{ matrix.os }} | |
| env: | |
| BOOST_ROOT: C:\local\boost_1_87_0 | |
| CMAKE_GENERATOR: Ninja | |
| CTOOLS_BUILD: all | |
| steps: | |
| - name: Checkout AzerothCore | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: 'mod-playerbots/azerothcore-wotlk' | |
| ref: ${{ (github.base_ref || github.ref_name) == 'test-staging' && 'test-staging' || 'Playerbot' }} | |
| path: a | |
| - name: Checkout Playerbot Module | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: 'mod-playerbots/mod-playerbots' | |
| path: a/modules/mod-playerbots | |
| - name: Move source tree to short path | |
| shell: powershell | |
| run: | | |
| if (Test-Path C:\ac) { | |
| Remove-Item C:\ac -Recurse -Force | |
| } | |
| New-Item -ItemType Directory -Path C:\ac | Out-Null | |
| robocopy "${{ github.workspace }}\a" "C:\ac" /MIR | |
| if ($LASTEXITCODE -le 7) { | |
| exit 0 | |
| } | |
| exit $LASTEXITCODE | |
| - name: Install Ninja | |
| shell: powershell | |
| run: | | |
| choco install ninja -y | |
| - name: ccache | |
| uses: hendrikmuhs/ccache-action@v1.2.13 | |
| - name: Configure OS | |
| shell: bash | |
| working-directory: C:\ac | |
| env: | |
| CONTINUOUS_INTEGRATION: true | |
| run: | | |
| ./acore.sh install-deps | |
| - name: Create AzerothCore CI config | |
| shell: bash | |
| working-directory: C:\ac | |
| run: | | |
| cat > conf/config.sh <<'EOF' | |
| CCOMPILERC="cl" | |
| CCOMPILERCXX="cl" | |
| CTYPE="Release" | |
| CSCRIPTS="static" | |
| CMODULES="static" | |
| CTOOLS_BUILD="all" | |
| CCUSTOMOPTIONS="-DCMAKE_RC_COMPILER=rc -DCMAKE_NINJA_FORCE_RESPONSE_FILE=ON -DCMAKE_NINJA_CMCLDEPS_RC=OFF -DCMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS=ON -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_OBJECTS=ON -DCMAKE_C_USE_RESPONSE_FILE_FOR_INCLUDES=ON -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_INCLUDES=ON -DCMAKE_C_USE_RESPONSE_FILE_FOR_LIBRARIES=ON -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_LIBRARIES=ON" | |
| EOF | |
| cat conf/config.sh | |
| - name: Setup MSVC | |
| uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 | |
| with: | |
| arch: x64 | |
| - name: Build | |
| shell: bash | |
| working-directory: C:\ac | |
| run: | | |
| export CTOOLS_BUILD=all | |
| export CMAKE_GENERATOR=Ninja | |
| export CC=cl | |
| export CXX=cl | |
| export RC=rc | |
| cmake --version | |
| ninja --version | |
| echo "CMAKE_GENERATOR=$CMAKE_GENERATOR" | |
| echo "CC=$CC" | |
| echo "CXX=$CXX" | |
| which cl || true | |
| which rc || true | |
| cl || true | |
| rc || true | |
| rm -rf var/build/obj | |
| ./acore.sh compiler build |