summaryrefslogtreecommitdiff
path: root/.github/workflows/windows_build.yml
blob: 527abc33ead16bd2db8b81cfe1630d34e19599b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
name: windows-build
on:
  push:
    branches:
      - 'master'
  pull_request:
    types: ['labeled', 'opened', 'synchronize', 'reopened']

concurrency:
  group: ${{ github.head_ref }} || concat(${{ github.ref }}, ${{ github.workflow }})
  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_79_0
    if: github.repository == 'azerothcore/azerothcore-wotlk' && (github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'run-build') || github.event.label.name == 'run-build')
    steps:
      - uses: actions/checkout@v2
      - name: Configure OS
        shell: bash
        env:
          CONTINUOUS_INTEGRATION: true
        run: |
          ./acore.sh install-deps
      - name: Process pending sql
        shell: bash
        run: bash bin/acore-db-pendings
      - name: Build
        shell: bash
        run: |
          export CTOOLS_BUILD=all
          ./acore.sh compiler build
      - name: Dry run authserver
        shell: bash
        run: |
          source ./apps/ci/ci-gen-server-conf-files.sh "authserver" "configs" "."
          cd env/dist
          ./authserver -dry-run
      - name: Dry run worldserver
        shell: bash
        run: |
          source ./apps/ci/ci-gen-server-conf-files.sh "worldserver" "configs" "."
          cd env/dist
          ./worldserver -dry-run
      - name: Stop MySQL
        run: net stop mysql
      - name: Copy dll files
        shell: bash
        run: |
          rm -rf env/dist/data
          cp "/c/tools/mysql/current/lib/libmysql.dll" "env/dist"
          cp "/c/Program Files/OpenSSL-Win64/bin/libcrypto-1_1-x64.dll" "env/dist"
          cp "/c/Program Files/OpenSSL-Win64/bin/libssl-1_1-x64.dll" "env/dist"
      - uses: actions/upload-artifact@v2
        with:
          name: windows-2022-MSVC17-release
          path: env/dist