mirror of
https://github.com/vmangos/core
synced 2026-08-14 16:29:10 -04:00
This will prevent the upcoming `windows-latest` image label migration[1] from potentially breaking the Windows workflows. [1]: https://github.blog/changelog/2025-07-31-github-actions-new-apis-and-windows-latest-migration-notice/#windows-latest-image-label-migration
115 lines
4.9 KiB
YAML
115 lines
4.9 KiB
YAML
name: Windows Development Release
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- development
|
|
paths-ignore:
|
|
- '.github/ISSUE_TEMPLATE/**'
|
|
- '.github/ISSUE_TEMPLATE.md'
|
|
- '.github/PULL_REQUEST_TEMPLATE.md'
|
|
- '.github/workflows/db_check.yml'
|
|
- '.github/workflows/db_dump.yml'
|
|
- 'sql/**'
|
|
- '.drone.yml'
|
|
- 'README.md'
|
|
- 'LICENSE'
|
|
- '.gitignore'
|
|
- 'CONTRIBUTING.md'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-2022
|
|
|
|
steps:
|
|
#git checkout
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: windows dependencies
|
|
#Sets versions for ACE/TBB
|
|
env:
|
|
ACE_VERSION: 7.0.9
|
|
ACE_VERSION2: 7_0_9
|
|
TBB_VERSION: 2020.3
|
|
|
|
run: |
|
|
#directory variables
|
|
export ACE_ROOT=$GITHUB_WORKSPACE/ACE_wrappers
|
|
export TBB_ROOT_DIR=$GITHUB_WORKSPACE/tbb
|
|
#ACE package download
|
|
curl -LOJ http://github.com/DOCGroup/ACE_TAO/releases/download/ACE%2BTAO-$ACE_VERSION2/ACE-$ACE_VERSION.zip
|
|
unzip ACE-$ACE_VERSION.zip
|
|
rm ACE-$ACE_VERSION.zip
|
|
#configuration of ACE header
|
|
echo "#include \"ace/config-win32.h\"" >> $ACE_ROOT/ace/config.h
|
|
#TBB package download
|
|
curl -LOJ https://github.com/uxlfoundation/oneTBB/releases/download/v$TBB_VERSION/tbb-$TBB_VERSION-win.zip
|
|
unzip tbb-$TBB_VERSION-win.zip
|
|
rm tbb-$TBB_VERSION-win.zip
|
|
#git bash shell
|
|
shell: bash
|
|
|
|
#build and install
|
|
- name: windows build & install
|
|
run: |
|
|
#directory variables
|
|
export ACE_ROOT=$GITHUB_WORKSPACE/ACE_wrappers
|
|
cd $GITHUB_WORKSPACE/ACE_wrappers
|
|
/c/Program\ Files/Microsoft\ Visual\ Studio/2022/Enterprise/MSBuild/Current/Bin/MSBuild.exe "ACE_wrappers_vs2019.sln" //p:Configuration=Release //p:Platform=x64 //t:ACE //m:2
|
|
cd $GITHUB_WORKSPACE
|
|
mkdir build
|
|
cd build
|
|
cmake -D TBB_ROOT_DIR=$GITHUB_WORKSPACE/tbb -DWITH_WARNINGS=0 -DUSE_EXTRACTORS=1 -G "Visual Studio 17 2022" -A x64 ..
|
|
/c/Program\ Files/Microsoft\ Visual\ Studio/2022/Enterprise/MSBuild/Current/Bin/MSBuild.exe "MaNGOS.sln" //p:Platform=x64 //p:Configuration=Release //m:2
|
|
#git bash shell
|
|
shell: bash
|
|
- name: Create Upload File Name
|
|
run: |
|
|
echo "ARCHIVE_FILENAME=dev-$(git rev-parse --short HEAD).zip" >> $env:GITHUB_ENV
|
|
- name: Archive files
|
|
run: |
|
|
#data is in Release folder
|
|
cd ${{github.workspace}}/bin
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbb.dll ${{github.workspace}}/bin/Release/tbb.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbb_debug.dll ${{github.workspace}}/bin/Release/tbb_debug.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbb_preview.dll ${{github.workspace}}/bin/Release/tbb_preview.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbb_preview_debug.dll ${{github.workspace}}/bin/Release/tbb_preview_debug.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbbmalloc.dll ${{github.workspace}}/bin/Release/tbbmalloc.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbbmalloc_debug.dll ${{github.workspace}}/bin/Release/tbbmalloc_debug.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbbmalloc_proxy.dll ${{github.workspace}}/bin/Release/tbbmalloc_proxy.dll
|
|
copy ${{github.workspace}}/tbb/bin/intel64/vc14/tbbmalloc_proxy_debug.dll ${{github.workspace}}/bin/Release/tbbmalloc_proxy_debug.dll
|
|
|
|
copy ${{github.workspace}}/ACE_wrappers/lib/ACE.dll ${{github.workspace}}/bin/Release/ACE.dll
|
|
copy ${{github.workspace}}/dep/windows/lib/x64_release/libmySQL.dll ${{github.workspace}}/bin/Release/libmySQL.dll
|
|
# copy "c:/Program Files/OpenSSL-Win64/bin/libssl-1_1-x64.dll" ${{github.workspace}}/bin/Release/libssl-1_1-x64.dll
|
|
# copy "c:/Program Files/OpenSSL-Win64/bin/libcrypto-1_1-x64.dll" ${{github.workspace}}/bin/Release/libcrypto-1_1-x64.dll
|
|
copy ${{github.workspace}}/dep/windows/lib/x64_release/libeay32.dll ${{github.workspace}}/bin/Release/libeay32.dll
|
|
|
|
7z a -tzip ${{env.ARCHIVE_FILENAME}} Release
|
|
- name: Archive this artefact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: snapshot-devbuild
|
|
path: "${{github.workspace}}/bin/${{env.ARCHIVE_FILENAME}}"
|
|
|
|
- name: Download artifact snapshot-Release
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
pattern: snapshot-devbuild
|
|
merge-multiple: true
|
|
path: all_snapshots
|
|
|
|
- name: Get current date
|
|
id: date
|
|
uses: Kaven-Universe/github-action-current-date-time@v1
|
|
with:
|
|
format: "YYYY-MM-DD"
|
|
|
|
- name: Upload snapshot
|
|
uses: "crowbarmaster/GH-Automatic-Releases@latest"
|
|
with:
|
|
repo_token: "${{ secrets.GITHUB_TOKEN }}"
|
|
automatic_release_tag: "latest"
|
|
prerelease: true
|
|
title: "Development Build(${{ steps.date.outputs.time }})"
|
|
files: all_snapshots
|