Commit Graph

15762 Commits

Author SHA1 Message Date
Yehonal
9fcacf7ea7 feat: improve session management and PM2 support in startup scripts (#22420)
New feature to manage service restart policies and refactors crash logging paths for better flexibility and clarity. The most significant changes include adding support for configurable restart policies (`on-failure` and `always`), updating documentation to reflect these changes, and improving crash path handling in multiple scripts.
2025-07-06 12:00:38 +02:00
Yehonal
9a837ee1f7 fix(bash): Improve session management and GDB handling in service scripts (#22418)
This pull request introduces several enhancements and fixes to the startup scripts for AzerothCore, focusing on improving service management, interactive mode handling, and script execution. The most important changes include adding support for non-interactive mode, enhancing systemd integration, and refactoring the starter script to handle binary paths and files more robustly.

### Enhancements to Service Management:
* **Non-Interactive Mode:** Added `AC_DISABLE_INTERACTIVE` environment variable to disable interactive prompts for services running without session managers (e.g., systemd/pm2). This prevents hanging during non-interactive execution. (`apps/startup-scripts/src/run-engine`, `apps/startup-scripts/src/service-manager.sh`) [[1]](diffhunk://#diff-1792abab64da981c71221890876ce832aab405f670f320f75b73b8788b1a4174R336-R349) [[2]](diffhunk://#diff-31edfed7f73d0647a5fc96ce74c249e025e884cd1fe06621cb78eb4a381464f9R724-R727)
* **Enhanced Systemd Integration:** Services using session managers like tmux/screen are automatically configured with `Type=forking` and appropriate `ExecStop` commands to terminate sessions gracefully. (`apps/startup-scripts/src/service-manager.sh`) [[1]](diffhunk://#diff-31edfed7f73d0647a5fc96ce74c249e025e884cd1fe06621cb78eb4a381464f9R401-R425) [[2]](diffhunk://#diff-31edfed7f73d0647a5fc96ce74c249e025e884cd1fe06621cb78eb4a381464f9R567-R578)

### Improvements to Script Execution:
* **Starter Script Refactor:** Updated the starter script to require both binary path and file name as parameters, improving clarity and error handling. (`apps/startup-scripts/src/starter`) [[1]](diffhunk://#diff-e92f132163ec1e49dc625eac9107c6841ae14e416aa35adec787dca5031dc631L6-R16) [[2]](diffhunk://#diff-e92f132163ec1e49dc625eac9107c6841ae14e416aa35adec787dca5031dc631L26-R44)
* **Temporary GDB File Management:** Enhanced handling of temporary GDB configuration files, ensuring proper cleanup after execution. (`apps/startup-scripts/src/starter`) [[1]](diffhunk://#diff-e92f132163ec1e49dc625eac9107c6841ae14e416aa35adec787dca5031dc631R68-R70) [[2]](diffhunk://#diff-e92f132163ec1e49dc625eac9107c6841ae14e416aa35adec787dca5031dc631R92-R141)

### Updates to Tests:
* **Test Adjustments:** Modified test cases to reflect the updated starter script parameter requirements and error messages. (`apps/startup-scripts/test/test_startup_scripts.bats`) [[1]](diffhunk://#diff-febbaeb294e50bdba0511ecad5d44b0c3f11ae92c79dd19dbd5f61d41a654278L26-R26) [[2]](diffhunk://#diff-febbaeb294e50bdba0511ecad5d44b0c3f11ae92c79dd19dbd5f61d41a654278L41-R49)
2025-07-05 23:02:04 +02:00
Kitzunu
a1a11a7c38 BREAKINGCHANGE(Metrics): Support InfluxDB v2 (#22358)
This commit introduces support for InfluxDB v2 in the metric logging system, updates configuration options, and enhances the code to handle both InfluxDB v1 and v2. The changes include updates to the `Metric` class, configuration file, and logging behavior.

### InfluxDB v2 Support:
* Added support for InfluxDB v2 in the `Metric` class by introducing new configuration options (`Metric.InfluxDB.Org`, `Metric.InfluxDB.Bucket`, `Metric.InfluxDB.Token`) and logic to handle v2-specific parameters.
* Updated the `SendBatch` method to construct HTTP requests differently based on whether v1 or v2 is enabled. 

### Configuration Updates:
* Replaced the `Metric.ConnectionInfo` configuration with `Metric.InfluxDB.Connection` and added detailed comments and examples for both InfluxDB v1 and v2 configurations in `worldserver.conf.dist`.
* Added placeholder configuration entries for InfluxDB v2 parameters (`Metric.InfluxDB.Org`, `Metric.InfluxDB.Bucket`, `Metric.InfluxDB.Token`) in `worldserver.conf.dist`. 

### Logging Enhancements:
* Added a commented-out logger configuration (`Logger.metric`) in `worldserver.conf.dist` for potential use in metric-specific logging.
2025-07-05 12:00:08 +02:00
Yehonal
161898b7e6 fix(installer/windows): update OpenSSL version to 3.5.1 to fix gh build errors (#22416)
Chocolatey on windows cannot download openssl 3.4.1 since the source has been removed.

3.5.1 is available instead. However, this must be tested

This https://community.chocolatey.org/packages/openssl/3.4.1 is pointing to this: https://slproweb.com/download/Win32OpenSSL-3_4_1.exe that doesn't exist anymore and has been replaced by the 3.4.2, but chocolatey doesn't have this version yet
2025-07-03 20:31:18 +02:00
github-actions[bot]
bd6011414a chore(DB): import pending files
Referenced commit(s): 75915c2e12
2025-07-03 17:28:49 +00:00
Jelle Meeus
75915c2e12 fix(DB/SAI): Use Holy Fire spell for Draenei Anchorite (#22414) 2025-07-03 14:27:46 -03:00
github-actions[bot]
4744ba3970 chore(DB): import pending files
Referenced commit(s): 4e9889db24
2025-07-03 15:44:24 +00:00
Kitzunu
87e500ff0f fix(DB/Autobroadcast): Update 'text' column in autobroadcast_locale t… (#22382) 2025-07-03 16:43:55 +01:00
github-actions[bot]
545d5a48e2 chore(DB): import pending files
Referenced commit(s): 08e6d4786a
2025-07-03 15:43:34 +00:00
Ryan Turner
4e9889db24 fix(DB/Quests) - Corrected the Reputation requirements for the Scryers and Aldor (#22362)
Co-authored-by: Tereneckla <Tereneckla@pm.me>
2025-07-03 16:43:23 +01:00
github-actions[bot]
08e6d4786a chore(DB): import pending files
Referenced commit(s): 0628ea53bb
2025-07-03 15:42:33 +00:00
Ryan Turner
206589636e fix(DB/ArathiBasin): Replacement for previously lost tabards added and adjustements to quests (#22338) 2025-07-03 16:42:22 +01:00
Benjamin Jackson
dba7f694ed fix(Scripts/Spells): Don't proc Misdirection from Mend Pet's heal effect. (#22293) 2025-07-03 16:41:52 +01:00
Macs-Account
0628ea53bb fix(Core/Unit): Add previously unreferenced DealDamage script hook in Unit (#22207) 2025-07-03 16:41:30 +01:00
Jelle Meeus
7561147e7c fix(Core/Spells): No longer add a signature to items created by NPCs (#22415) 2025-07-03 12:35:06 -03:00
IntelligentQuantum
f0a38b3091 feat(Core/LFG): RDF CF (#22360) 2025-07-03 10:46:02 -03:00
Yehonal
04547d90b3 fix(CI): update build job to support multiple Ubuntu versions (#22413) 2025-07-03 11:03:16 +02:00
github-actions[bot]
583c115660 chore(DB): import pending files
Referenced commit(s): 780c240440
2025-07-03 06:07:22 +00:00
Ryan Turner
780c240440 fix(DB/SAI) - Corrects Corpse.Decay for Patchwerk from the end of the Death Knight zone (#22412) 2025-07-03 08:06:19 +02:00
github-actions[bot]
10e1f3af8c chore(DB): import pending files
Referenced commit(s): ba7407b562
2025-07-02 23:43:46 +00:00
Andrew
ba7407b562 fix(DB/SAI: Fix Archerus Deathcharger not despawning if players move … (#22411) 2025-07-02 20:42:44 -03:00
github-actions[bot]
ab38edb81b chore(DB): import pending files
Referenced commit(s): 8dccc64668
2025-07-02 07:03:53 +00:00
Rocco Silipo
8dccc64668 fix (DB/Creature) Tirion doesn't get back on his horse anymore during The Light of Dawn event. (#22406) 2025-07-02 04:02:52 -03:00
Benjamin Jackson
12328920dd fix(Core/Reputation): Remove At War flag when rising above hated reputation. (#22386) 2025-07-01 15:44:48 -03:00
github-actions[bot]
273607b38a chore(DB): import pending files
Referenced commit(s): a04375e4fe
2025-07-01 18:38:05 +00:00
Rocco Silipo
a04375e4fe fix (DB/Creature) A couple of simple SmartAI corrections for Scarlet Ghouls and Scourge Gryphons. (#22405) 2025-07-01 20:37:02 +02:00
github-actions[bot]
fcda60bbea chore(DB): import pending files
Referenced commit(s): 77529b0769
2025-07-01 14:42:57 +00:00
Rocco Silipo
77529b0769 fix (DB/Creature) Elite npcs no longer die during The Light of Dawn battle. (#22402) 2025-07-01 16:41:46 +02:00
github-actions[bot]
e01286fcb2 chore(DB): import pending files
Referenced commit(s): c581abc4cd
2025-07-01 14:40:07 +00:00
Rocco Silipo
c581abc4cd fix (DB/Creature/Scarlet Enclave) Implement Ghouls and Gryphon spawn and behaviour. (#22348)
Co-authored-by: Yehonal <yehonal.azeroth@gmail.com>
2025-07-01 16:39:05 +02:00
Yehonal
e1b2689c3a feat(bash): startup-scripts reworked + bash scripts workflow integration (#22401) 2025-07-01 15:35:54 +02:00
github-actions[bot]
d3130f0d39 chore(DB): import pending files
Referenced commit(s): 681e8439ff
2025-07-01 07:18:01 +00:00
Andrew
681e8439ff fix(Scripts/ScarletEnclave): Correct Tirion spawn position in Light o… (#22394) 2025-07-01 09:17:00 +02:00
Jelle Meeus
dbb995cace refactor(Scripts/Pet): Death Knight use creature register macros (#22399) 2025-06-30 17:55:18 +02:00
Takenbacon
fd262c3ab1 feat(Core/Config): Improvements to config caching (#21647) 2025-06-30 17:14:12 +02:00
github-actions[bot]
904ddc72cc chore(DB): import pending files
Referenced commit(s): 656694b383
2025-06-30 03:50:49 +00:00
Jelle Meeus
656694b383 feat(Core/Command): add GM spectator to allow cross-faction /follow (#22393) 2025-06-30 00:49:47 -03:00
github-actions[bot]
ab5af303ab chore(DB): import pending files
Referenced commit(s): 31012923c1
2025-06-29 19:12:09 +00:00
Andrew
31012923c1 fix(Core/Spells): Fix SPELL_EFFECT_LEAP_BACK not working on targeted … (#22389) 2025-06-29 16:11:11 -03:00
github-actions[bot]
c3cec7198e chore(DB): import pending files
Referenced commit(s): 563ef5d7d9
2025-06-29 19:03:11 +00:00
Kitzunu
ae28b35f2c feat(Scripts/Commands): Add guild ranks display to guild info command (#22380) 2025-06-29 16:02:55 -03:00
Christian M
563ef5d7d9 fix(Scripts/Spells): Death Knight Bone shield charges now have a 2 second delay between uses. (#22340) 2025-06-29 16:02:09 -03:00
github-actions[bot]
d00449dbd8 chore(DB): import pending files
Referenced commit(s): 57487b8244
2025-06-29 18:59:54 +00:00
Benjamin Jackson
57487b8244 fix(DB/Creature): Make Captured Raptor immune to player characters. (#22387)
Co-authored-by: Ryan Turner <16946913+TheSCREWEDSoftware@users.noreply.github.com>
2025-06-29 15:58:53 -03:00
github-actions[bot]
9c2ea449b6 chore(DB): import pending files
Referenced commit(s): 3b13fe6207
2025-06-29 11:29:19 +00:00
Jelle Meeus
3b13fe6207 fix(Scripts/Spells): add script to GM spell CooldownAll (#22383) 2025-06-29 13:28:21 +02:00
Kitzunu
f4e049f227 refactor(db-scripts): replace PowerShell database tools with Bash scripts and update documentation (#22372)
* closes https://github.com/azerothcore/azerothcore-wotlk/issues/4343

This pull request replaces the PowerShell implementation of the AzerothCore database export and squash tools with Bash scripts, streamlining the process and improving compatibility. It also updates the documentation to reflect these changes. The most important changes include the creation of new Bash scripts for exporting databases, squashing databases, and updating versions, as well as the removal of the previous PowerShell script and its associated documentation.

### Script Replacement and Enhancements:
* [`apps/DatabaseSquash/DatabaseExporter/DatabaseExporter.sh`](diffhunk://#diff-af0bd252ac095aaad91b842c75b60a689792e6dc9ce88f5e2e4b6f68acf84dcaR1-R69): Introduced a Bash script to replace the PowerShell implementation for exporting database tables, with added features such as formatted SQL output and dynamic directory creation.
* [`apps/DatabaseSquash/DatabaseSquash.sh`](diffhunk://#diff-79ff4f749c045a7d91e9b43aefb5d6fbebdc5fdfb430fbcba329e4d96d71a4fbR1-R52): Added a Bash script to automate the database squash process, integrating the version updater and database exporter tools.
* [`apps/DatabaseSquash/VersionUpdater/VersionUpdater.sh`](diffhunk://#diff-3abc69c645cb80aff30824739e317c9e847e743eeab15ab4825951d10179b265R1-R84): Created a Bash script for automatically updating the version in `acore.json` and generating SQL update files with proper versioning.

### Documentation Updates:
* [`apps/DatabaseSquash/DatabaseExporter/databaseexporter.md`](diffhunk://#diff-b2b291286f2b900a022474f00754ebfe78410780c010d46752335a372d688aefR1-R16): Rewritten documentation to reflect the usage of the new Bash script for database exporting.
* [`apps/DatabaseSquash/VersionUpdater/versionupdater.md`](diffhunk://#diff-f12e21f8a404957c90d9120cf9df0724ff27a7efdb5de0798d974079cfe8adadR1-R10): Added documentation for the new version updater tool, explaining its functionality and usage.
* [`apps/DatabaseSquash/databasesquash.md`](diffhunk://#diff-4a559f6e7404b529714bac65ad22744feb7b9f88343864a20e0a46974233767eR1-R11): Documented the overall database squash tool, detailing its integration of the version updater and database exporter scripts.

### Removal of Legacy Code:
* [`apps/DatabaseExporter/DatabaseExporter.ps1`](diffhunk://#diff-2b4e49f704d88a372b5160c7278839668c81dbecaf52a4edd327873e30b9ae70L1-L234): Removed the PowerShell script for database exporting, along with its associated functionality and settings.
* [`apps/DatabaseExporter/databaseexporter.md`](diffhunk://#diff-0618d62def0d611be6e0d4fc524df6f702f493cb87870d9382402aaf52f484e8L1-L85): Deleted outdated documentation for the PowerShell-based database exporter tool.
2025-06-28 16:17:48 +02:00
Hyjarion
969e0275a9 fix(Core/Player): Mutilate + Cold Blood crit fix (#22308) 2025-06-28 10:58:45 -03:00
Kitzunu
ca8a2a5f58 fix(CI/Codestyle): Add directory check to SQL codestyle script (#22376) 2025-06-28 15:06:39 +02:00
github-actions[bot]
c0276a3410 chore(DB): import pending files
Referenced commit(s): bd0bcaef09
2025-06-28 12:08:41 +00:00