Commit graph

24 commits

Author SHA1 Message Date
Daniel Ceregatti
9fb3504bac Ensure that the mpmissions being used has all the files we need. Some don't, like Namalsk, which lacks cfggameplay.json.
Account for default ports. Another consequence from the bad merge.
2024-06-27 14:34:21 -07:00
Daniel Ceregatti
2f1509fb65 Change the default maps to always come from github. One used to be able to install the server using the anonymous steam user, but now the mpmissions aren't included if the anonymous user is used.
Handle multiple env files for now while we transition server orchestration entirely to the web container.
Add MuchStuffPack mod integration.
Add git to the web container so we can checkout server resources from github as git. Allows us to just pull on git to keep up to date.
2024-06-19 16:59:33 -07:00
Daniel Ceregatti
a905435bfc Add support for detecting the version of the server. It's very ghetto. There must be a better way. 2024-05-29 01:42:38 -07:00
Daniel Ceregatti
80adb60aa8 As of today, we have a release version! I can't believe it!
We no longer need to lower case the files.
Switch to the release server id.
Move rcon from the web container to the server container.
Handle .c files on a per-map basis.
Update per-map .c files.
2024-02-20 14:28:59 -08:00
Daniel Ceregatti
d1d3069500 Add Diesel Jerry can mod. 2023-12-21 16:02:39 -08:00
Daniel Ceregatti
287d60fe1d Refactor install to map, as that's more relevant.
Update docs.
2023-11-03 17:13:18 -07:00
Daniel Ceregatti
b1448d8860 Add cfgeventspawns.xml integration!
Add quirk to handle upstream XMLs not having the correct nodes.
Add initial map install based on the map in the config.
Add package to allow for XML merging in the server container.
Add an environment variable that prevents the server from starting, to test mod XML integration at server start.
Back up logs into dedicated directories based on the date when the server exits.
Improve logic for copying XML files into mpmissions.
Fix status output formatting.
Get map name from the config at script start in the server script.
Refactor XML env scripts so they don't have a hashbang.
Refactor one mod's integration with the new file naming convention.
2023-09-09 11:02:24 -07:00
Daniel Ceregatti
e6a381315f Fix lack of root node in XML when normalizing.
Refine output to only show relevant info when starting the server.
Filter mod integration by current map, even if other mpmissions directories should exist.
Remove previous cfgeconomy directories when starting, to prevent previous files from possibly existing.
Orchestrate the retrieval and normalization of XML files as 'dz x ID' now does both.
2023-09-08 12:13:29 -07:00
Daniel Ceregatti
887374587d There are no mpmissions in the server container when it starts for the first time. Ensure Chernarus is copied over as a default when this is detected, as the server is expected to start successfully. Presumes a default config where the map hasn't been changed.
Make development work by setting an environment variable.
Set the web container to restart instead of not, should the express server crash.
Copy XML files that are merged when the server  starts only when the mpmissions directory exists.
Refactor XML functions for better naming.
Handle display of lists when no mods are installed.
Add support for adding mpmissions for Deer Isle and mpmissions in general via mod integrations.
Add support for Red Falcon Watercraft XML files. WIP.
Add a deer isle DayZ bicycle spawn file.
2023-09-07 12:08:12 -07:00
Daniel Ceregatti
ad2f547845 Refactor function name so it's different between web and server containers.
Fix typo.
2023-08-31 17:05:57 -07:00
Daniel Ceregatti
65840a79c5 Refactor everything the relies on getting a mod by index in a listing. This had to account for context such needing to maintain mod ordering when starting the server.
Moved a lot of the functions out of scripts and into common and consolidated.
Fix some output formatting.
Make key copying only happen in a server.
2023-08-30 18:08:08 -07:00
Daniel Ceregatti
745788560f When creating symlinks, remove more than just spaces from mod names. 2023-08-25 17:41:46 -07:00
Daniel Ceregatti
5e6c31aaf3 Fix path to xml.sh 2023-07-25 15:05:13 -07:00
Daniel Ceregatti
2395f43024 Move this to the correct script. 2023-06-16 17:13:09 -07:00
Daniel Ceregatti
46b8cce5cf Remove debug.
Add mods README.
Update docs to reflect the current state of the code...up to a point...WIP.
2023-06-14 19:49:39 -07:00
Daniel Ceregatti
4a6427f893 Add Pinia store so we can have disparate components.
Add Vueuse core library for useFetch.
Get async requests working with the above.
Start using Vue's Suspense feature.
Make Status its own component.
Start adding search results.
Continued work on error modal.
Add CORS headers to the backend.
Remove error store, as we only have one store.
Rename favicon.png to favicon.ico.
Remove functions from scripts where they are not used. Move functions to where they are used.
Lots of WIP.
2023-06-11 18:20:14 -07:00
Daniel Ceregatti
cf47b7fe1f Continued work on the web UI:
XML "editor" WIP.
Add xmltree component.
Start work on shelling out to steamcmd from node.
Move script functions out of common and into individual scripts.
Update docs.
2023-06-03 21:57:14 -07:00
Daniel Ceregatti
8db515313b Add mod search.
Renamed main container to web.
Added the STEAMAPIKEY environment variable placeholder, as this is necessary when searching for mods.
Refactor locations of scripts and paths.
Rename start scripts to be more consistent with their new locations.
Run the web server under nodemon to prevent manual restarting.
2023-05-25 17:32:58 -07:00
Daniel Ceregatti
f755b6fe6d First version where XML merging is working using the cfgeconomy method!
Split up the XML wrangling between the two containers. This means the web one needs xmlstarlet.
2023-05-20 20:07:47 -07:00
Daniel Ceregatti
2fc31fea37 The server doesn't like read only directories where it finds its files. Removing read-only flags from mounts for now.
Rework directories so there are fewer volumes within volumes.
Keep splitting up the code between the two scripts, removing unused variables, etc..
Add XML file merging integration. WIP.
Fix lack of comma in cfg file that _might_ have been causing issues...
2023-05-18 17:29:27 -07:00
Daniel Ceregatti
64f162001d Continue refactoring file locations in the two containers.
Also refactor variables so they're consistent.
Set container names in PS1.
Update docs.
2023-05-16 09:03:41 -07:00
Daniel Ceregatti
206c838f9d Continue splitting up the functionality. Only put functions and files that pertain to the container and/or volume.
Set forceSameBuild = 0 because the release build we have, while it works, reports a few revisions behind.
WIP getting all this working again.
2023-05-15 17:44:56 -07:00
Daniel Ceregatti
4cb4a4409d Mount each script into /usr/local/bin.
Keep separating out the functionality between the two scripts.
2023-05-15 08:56:51 -07:00
Daniel Ceregatti
71004b4fcc Start turning this project into a provisioning system: The main image will manage the base server files and mod files, then run servers as separate containers with these volumes mounted read-only, so they can be shared across server instances.
Add command line xml merge tool for when that time comes.
Add Red Falcon Heliz mod as the work-in-progress for getting a turnkey system that merges many different XML files that a full server mod installation will require.
Fix finding a mod by index and use that for all mod operations.
Start re-working how mods are added/removed/activated/deactivated. Split the script up into separate files with distinct functionality. WIP.
Add a template system for handling mod XML files.
Add an express web server to be the provisioning container frontend.
Add lots of comments.
Add TL;DR for turnkey release server install.
2023-05-13 20:58:35 -07:00