Guys, you are currently trying to reinvent the wheel.
Thanks to the Nephyrin, there is a nice package called nemrun which does 
the checking for update. The most useful tool from this package is 
srcupdatecheck. You can adopt it to use in your own scripts or just use 
the whole package.

If the gameservers and the system is owned by you, there is another 
interesting way of dealing with updates which does not require to 
shutdown gameserver for the update period and consumes less space on the 
drive if there is more than one server.
The scheme would be as follow:
1. Firs of all you need a directory with base server files (like 
/game/l4d2_base)
2. The real server resides in the different directory and is hard-linked 
to the base files (command to hard link cp -f -r -p -l /game/l4d2_base/* 
/game/real_l4d2_server)
3. Create a crontab script which calls srcupdatecheck and depending on 
the output calls steam update tool binary and updates base server files
4. Note that when you update base files, they are unlinked, but they are 
not deleted. The real gameserver is left with the old files and the base 
server files get the updated ones.
5. When the steam binary completes the update process, the crontab 
scripts calls:

screen -S l4d2_socket_name -X stuff "quit
"

(note: the closing quote is on the next line, because the quit command 
has to end with a enter/return/whatever you call it)

6. Gameservers should be started with a custom script like this one:

while [ true ] ; do
  # update gameserver files with base files
  cp -f -r -p -l /game/l4d2_base/* /game/real_l4d2_server
  # run the server
  ./srcds_run -norestart ...(rest of your params, without -autoupdate)
done

Thats the way i'm dealing with updates. Works like charm. You can also 
use rsync to copy files, because hard-links are sometimes tricky to 
understand :)

On 2010.07.05. 9:38, Ross Bemrose wrote:
>    In my experience, Steam updates on Linux are not stable enough to let
> it auto-update.  Steam skips a package if it doesn't manage to download
> said package in so many tries.  I've had it happen far too often on TF2
> where it will update one package but skip another, leaving the server in
> an inconsistent (crashing) state.
>
> This may not be as large a problem for L4D2 because it only has 3
> packages, 1 of which is rarely updated... but TF2 only has 6 packages, 3
> of which are rarely updated and it often skips the Team Fortress 2
> Content package but updates Materials and Dedicated Server.
>
> On 7/5/2010 12:14 AM, Jesse Molina wrote:
>    
>> Hi all
>>
>> I'm going to slightly threadjack here.  I'm a very experienced unix
>> sysadmin, but I'm a noob to the hlds servers.
>>
>> On this subject, how do others handle automatic upgrading when there is
>> a new server update is out?  Is it even wise to attempt auto updating?
>>
>> I know there is the -autoupdate arg to the startup command, but I'm
>> under the impression that it's broke, and has always has been broke.  I
>> might be wrong there though, feel free to set me straight.
>>
>> So, how do others handle automatic updates to the server app?
>>
>> And yes, I realize that doing said auto updates may break mods, but hey,
>> whatever.
>>
>> Thanks
>>
>>
>>
>> Eric Riemers wrote:
>>      
>>> All,
>>>
>>> Since these mutators are coming every now and then, i need to update all my
>>> l4d2 instances.
>>> These are forks so the nicest thing to do is a shutdown, then it updates it
>>> and done.
>>>
>>> However, I only know that I should telnet to the fork port and type in
>>> "shutdown"
>>>
>>> Is there a easy way I can setup something in cron to issue a shutdown each
>>> day?
>>>
>>> Eric
>>>
>>>
>>> _______________________________________________
>>> To unsubscribe, edit your list preferences, or view the list archives, 
>>> please visit:
>>> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>>>        
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives, please 
> visit:
> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>    


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlds_linux

Reply via email to