arkmanager / ark-server-tools

Set of server tools used to manage ARK: Survival Evolved servers on Linux
MIT License
680 stars 144 forks source link

Twice mod update #530

Closed arkfrance closed 8 years ago

arkfrance commented 8 years ago

Hey there,

i've got a small problem after my mod got updated a few minutes later, it asks for the same update. The serveur need two update of the same mod to finish it properly, where this can be related to ?

klightspeed commented 8 years ago

What mod was this and when did this occur?

arkfrance commented 8 years ago

346110] Starting Workshop download job [2016-07-07 09:45:05] [AppID 346110] Download item 558079412 result : OK [2016-07-07 09:45:05] [AppID 346110] Finished Workshop download job : No Error [2016-07-07 09:45:05] [AppID 346110] Upda[2016-07-07 09:45:06] [AppID 346110] Download item 543859212 result : OK [2016-07-07 09:45:06] [AppID 346110] Finished Workshop download job : No Error [2016-07-07 09:45:06] [AppID 346110] Updating workshop item details failed with Failure

[2016-07-07 09:45:09] [AppID 346110] Loaded workshop items in "/home/steam/steamapps/workshop" (24 installed, 30 needed) [2016-07-07 09:45:09] [AppID 346110] Starting Workshop download job [2016-07-07 09:45:10] [AppID 346110] Download item 558079412 result : OK [2016-07-07 09:45:10] [AppID 346110] Finished Workshop download job : No Error 346110] Starting Workshop download job

Sometimes it asks for another mod update when it does that

arkfrance commented 8 years ago

i've removed the mod but i don't know why the workshop is downloading something when there is no update

arkfrance commented 8 years ago

OFF TOPIC : Don't know if it will help you for something :

Windows & Linux Dedicated Servers now support automatic mod download/installation/updating! Just add "-automanagedmods" to your launch commandline and it will do so before the server launches (note for Maps this will not work unless you're specifying the Workshop ID to load a Mod Map). On Linux Servers, you need to run this script (included with the ARK dedicated server files) once to install SteamCMD: \SteamCMDInstall.sh

You can also specify a manual list of extra Steam Workshop Mods/Maps/TC ID's to download/install/update in your Game.ini via (with the commandline as normal to actually use them in-game), example:

[ModInstaller] ModIDS=680481868 ModIDS=682394267

Maybe a better way to do

klightspeed commented 8 years ago

Except that no such .sh file is included in the Linux gameserver files.

Edit: It expects steamcmd to be installed into $arkserverroot/Engine/Binaries/ThirdParty/SteamCMD/Linux

It also expects to have the cwd set to $arkserverroot/ShooterGame/Binaries/Linux, as it attempts to execute steamcmd.sh using a relative path.

Should we perhaps download and extract https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz to this directory during install or updates?

Edit 2: Support for -automanagedmods has been added to 1.6-dev.unstable in 3fe2977 and 4c8d9d5

Note that any issues we have with SteamCMD the server is also going to have.

arkfrance commented 8 years ago

So what's best ? Your way for now ?

klightspeed commented 8 years ago

Using arkflag_automanagemods with --update-mods should with 1.6-dev.unstable use download_workshop_item to download the mod, and let the game server itself apply the mod. Note that the game server itself will also run the same command during startup, so if a mod update comes out between arkmanager downloading the mod and the server restarting, then that restart will take longer as the server will download the updated mod.

arkfrance commented 8 years ago

So what's the difference between now and before ?

klightspeed commented 8 years ago

Before 3fe2977, the user would need to extract steamcmd to the required directory as otherwise the ARK server will crash when given the -automanagemods option.

Before 4c8d9d5, the --update-mods command did not know about the -automanagemods, and would use a different instance of steamcmd to the ARK server. Therefore, there would be two copies of the mods, with arkmanager installing one copy when using update --update-mods, then the server installing the other when using the -automanagemods option.

arkfrance commented 8 years ago

Since the last update 1.6 unstable :

arkmanager useconfig centpve status [ ERROR ] You have not rights to write in the log directory. Running command 'status' for instance 'centpve' /etc/arkmanager/arkmanager-center-pve.cfg: ligne 64: arkflag_automanagemods : not found

arkfrance commented 8 years ago

arkmanager useconfig centpvp status [ ERROR ] You have not rights to write in the log directory.

arkfrance commented 8 years ago

capture

The arkmanager process is using too much no ?

klightspeed commented 8 years ago

That process has used 7 hours of CPU time. What are its ancestors, and are any of its children the ShooterGameServer processes?

arkfrance commented 8 years ago

Only 2 instances are online, never seen that process using that much, I will try to restart the server later

Rob-bb commented 8 years ago

@klightspeed Do you intend to continue to support the current way of updating mods in ark-server-tools? I have a setup that is working nicely and don't want to switch to using the new system, firm believer in not fixing what isn't broken :)

klightspeed commented 8 years ago

@rob-bb Yes, the current way of updating mods is still supported. If you don't want to use the ARK server automatic mod manager, then don't use arkflag_automanagemods=true. The command arkmanager update --update-mods will then continute to update the mods, and not leave it to the server to do.

@arkfrance I'm wondering if it's another livelocked update process.

arkfrance commented 8 years ago

i havn't got any lock update process file, got only 2 servers running = 2 game folder

arkfrance commented 8 years ago

when arkflag_automanagemods=true is on my cfg,

what should i do next ?

should i add the mods in the ini like that ?

[ModInstaller] ModIDS=680481868 ModIDS=682394267 ModIDS=714672786

klightspeed commented 8 years ago

From what I found, the ARK server will download mods specified in the MapModId and GameModIds parameters. The ModInstaller section seems to be for downloading mods not specified on the server's commandline.