Commit Graph
14 Commits
Author SHA1 Message Date
luis 8d95b1f130 Fix latest update 2026-01-28 18:45:01 -03:00
agatho 40b599a50e Merge branch 'main' of https://github.com/Thordekk/WowCommunityProject
# Conflicts:
#	.github/workflows/codeql-analysis.yml
#	.github/workflows/docs-validation.yml
#	.github/workflows/linux-build.yml
#	.github/workflows/notifications.yml
#	.github/workflows/playerbot-ci.yml
#	.github/workflows/playerbot-dependency-updates.yml
#	.github/workflows/playerbot-nightly-review.yml
#	.github/workflows/release.yml
#	.github/workflows/stale.yml
#	.github/workflows/upstream-sync.yml
#	.github/workflows/win-x64-build.yml
#	src/modules/Playerbot/AI/ClassAI/BaselineRotationManager.cpp
#	src/modules/Playerbot/AI/ClassAI/ClassAI.cpp
#	src/modules/Playerbot/Tests/BotSessionIntegrationTest.cpp
#	src/modules/Playerbot/Tests/SocketCrashAnalyzer.cpp
2026-01-27 05:38:40 +01:00
agathoandClaude Opus 4.5 15001ddcc2 fix(ci): Fix CodeQL disk space issue and upgrade to v4
- Add disk cleanup step to free ~30GB before build
- Remove dotnet, android SDK, boost, swift, and CodeQL cache
- Reduce parallel build jobs from 4 to 2 to reduce disk usage
- Add disk space monitoring before/after cleanup and build
- Upgrade all CodeQL actions from v3 to v4 (v3 deprecated Dec 2026)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 20:02:31 -03:00
agathoandClaude Opus 4.5 78657cc574 fix(ci): Remove invalid ternary operator from dependency-updates workflow
GitHub Actions doesn't support ternary operators (?:) in expressions.
Also fixed PowerShell Get-Date inside JavaScript template literal.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 20:01:52 -03:00
agathoandClaude Opus 4.5 183a6f7e38 fix(ci): Fix workflow file issues in notifications and dependency-updates
notifications.yml:
- Comment out repository_vulnerability_alert event (requires GitHub
  Advanced Security which is an Enterprise feature)
- Comment out notify-security job until Advanced Security is enabled

playerbot-dependency-updates.yml:
- Make OpenSSL check more robust by checking if path exists first
- Fall back to system OpenSSL if custom path not found
- Skip check gracefully if OpenSSL not installed

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 20:01:16 -03:00
agathoandClaude Opus 4.5 94bbeda18c fix(ci): Remove -DWITH_WARNINGS=1 flag from Windows build
The -DWITH_WARNINGS flag enables additional compiler warnings that
TrinityCore core code doesn't pass (size_t to int conversions in
BoundingIntervalHierarchy.cpp). Keep only -DWITH_WARNINGS_AS_ERRORS=ON
which treats the default warnings as errors without enabling extra ones.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 20:00:38 -03:00
agathoandClaude Opus 4.5 7f64d4a8d6 feat(ci): Comprehensive GitHub Actions workflow enhancement
This commit overhauls the CI/CD infrastructure with enterprise-grade workflows:

## Workflow Changes

### Removed
- issue-labeler.yml (TrinityCore-specific, won't run on fork)
- win-x64-build.yml (consolidated into windows-build.yml)

### Added
- codeql-analysis.yml: Security scanning with CodeQL, Trivy, TruffleHog
- release.yml: Multi-platform automated releases (Windows, Linux, macOS)
- upstream-sync.yml: Weekly TrinityCore upstream synchronization
- docs-validation.yml: Markdown lint, link check, spell check
- stale.yml: Automated stale issue/PR management
- notifications.yml: Discord/Slack integration for build status
- windows-build.yml: Enhanced Windows build with tests

### Enhanced
- linux-build.yml: Added timeouts, artifact uploads, improved formatting
- macos-arm-build.yml: Added ccache, timeouts, artifact uploads
- playerbot-nightly-review.yml: Full trend analysis, metrics collection
- pr-labeler.yml: File-based labels, size labels, auto-assign

### Configuration Files
- labeler.yml: Path-based PR label mappings
- auto-assign.yml: Automatic reviewer assignment

## Trigger Schedule (UTC)
- 01:00 Daily: Stale issue management
- 02:00 Daily: Nightly review with trend analysis
- 03:00 Sunday: Upstream sync
- 04:00 Monday: CodeQL security analysis
- 00:00 Sunday: Dependency updates

## Features
- Multi-platform builds with parallel execution
- Automated security scanning and vulnerability detection
- Historical metrics and trend analysis
- Discord/Slack notifications (webhook-based)
- Automated release creation with changelogs
- PR size labeling and auto-assignment

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 19:57:26 -03:00
agathoandClaude Opus 4.5 83df32c09a fix(ci): Fix LIBRARY_PATH export for macOS ICU linking
Use shell export instead of env block to properly set LIBRARY_PATH
with correct handling of potentially empty existing value.

The ${VAR:+:$VAR} syntax only adds the colon and existing value
if VAR is non-empty, preventing the "search path '' not found" warning.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 19:53:18 -03:00
agathoandClaude Opus 4.5 6970ddbf52 fix(ci): Add ICU support for macOS arm64 build
The macOS build was failing with 'library icudata not found' because
Boost.Locale requires ICU libraries which are keg-only on Homebrew.

Changes:
- Install icu4c package via Homebrew
- Set ICU_ROOT environment variable for CMake
- Add ICU path to CMAKE_PREFIX_PATH
- Set LIBRARY_PATH to help linker find ICU libraries

This fixes the macOS worldserver link failure.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-23 19:50:05 -03:00
agathoandClaude Opus 4.5 230cc39a5d fix(ci): Resolve Windows Boost path and Linux linker issues
- Skip FindSystemBoost.cmake on CI (GITHUB_ACTIONS env) to use standard
  Boost finding with MarkusJx/install-boost action
- Change Linux build from SCRIPTS=dynamic to SCRIPTS=static to fix
  linker error with static Boost libraries

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-22 21:24:24 -03:00
agathoandClaude Opus 4.5 5b964c8d50 fix(ci): Add git submodule init for TBB dependency
Playerbot requires Intel TBB which is vendored as a git submodule.
All CI workflows now initialize submodules before CMake configure.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-22 21:22:34 -03:00
agathoandClaude Opus 4.5 d777d1be92 fix(ci): Resolve CI build failures on playerbot-dev
- Update Boost version to 1.89.0 for Windows builds (required by upstream)
- Add BUILD_PLAYERBOT=ON to all workflow CMake configurations
- Make ModuleUpdateManager include/usage conditional on BUILD_PLAYERBOT
  in World.cpp to support builds with/without playerbot module

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Signed-off-by: luis <[email protected]>
2026-01-22 21:20:34 -03:00
agathoandClaude Opus 4.5 1e7064357a chore(ci): Port CI/CD workflows and set 60-min build timeouts
- Port workflows from TrinityCore playerbot-dev:
  - codeql-analysis.yml: CodeQL security scanning
  - notifications.yml: Discord/Slack notifications
  - release.yml: Multi-platform release builds
  - upstream-sync.yml: Weekly TrinityCore sync
  - docs-validation.yml: Documentation validation
  - stale.yml: Stale issue/PR management

- Update build timeouts to 60 minutes for GitHub Actions:
  - win-x64-build.yml
  - linux-build.yml
  - macos-arm-build.yml
  - release.yml (all 3 platform builds)
  - playerbot-ci.yml (build and test jobs)

- Update Boost to 1.89.0 across workflows
- Adapt artifact names to WowCommunityProject-*
- Update branch references from playerbot-dev/master to main

Co-Authored-By: Claude Opus 4.5 <[email protected]>
2026-01-22 21:31:28 +01:00
luis 93a4112475 serena and docs 2026-01-20 21:25:30 -03:00