devryan / GamePanelX-V3

The Original Free and Open Source Game Control Panel
https://www.gamepanelx.com
Other
131 stars 94 forks source link

Create server ends up with an empty folder #15

Closed gbobr closed 11 years ago

gbobr commented 11 years ago

I have a GPX installation managing gameservers in 3 network servers. For the first network server i setted up everything works fine, but for the others, when i create a template and try to create a server from it, the panel says installation was fine but looking at the server's folder, it's empty..

The template file is ok. I've decompressed it mannualy in the corresponding folder but anyway when i try to start the server it shows an error message:

Game directory (/usr/local/gpx/users/test/190.210.177.180:28015) doesnt exist!

gbobr commented 11 years ago

Update: Examining logs i found out that it is looking for a file named 3.tar.gz when my template file is 7.tar.gz

gbobr commented 11 years ago

Another update: Looks like the problem is that it is always trying to use the first default template.

I had template id 3 as default for network server 1 template id 6 as default for network server 2 and template id7 as not default for network server 2

When creating a gameserver on network server 2, it always tried template id 3 that doesn't exist in network server 2. Changed template id 3 to not default and it worked with template id 6

It will never install template id 7, even when i choose it because it always uses the first default template.

gbobr commented 11 years ago

Yet another update: My newly installed server keeps failing to start. GamePanelX is trying to start it in network server 1 isntead of network server 2 where it is installed. :/ I can see the startup error in server 1 servers.log

gbobr commented 11 years ago

Yet anoooother update:

Looking at sourcecode, the startup problem was related to "restart" method in servers class looking at network's "parentid" (line 140) and that "parentid" being 0 for main ip's on each network server.

My server id was 7, with parentid 0 because it was the main ip. Changed parentid to 7 and then startup worked.

gbobr commented 11 years ago

I fixed this bug on pull request #18 Please accept it.

Still not sure if it will work with non-default templates, but the primary issue is fixed :D

gbobr commented 11 years ago

I kept testing, and the initial bug is not fixed yet.

Gpx is still trying to use the first default template it finds when creating a server. This causes two problems:

The proposed pull request, anyway, fixes the startup and stop problem, and maybe many other problems related with multi-networkserver installations. So please, consider it.

devryan commented 11 years ago

You don't have to dig into it so much in the future; simply opening a bug request is enough :) -- mainly since I know the codebase so well. I do appreciate you trying to check it out though.

This is actually because when the create server function runs, it's just grabbing the default template and ignoring the one you choose. I will fix this in a few minutes.

gbobr commented 11 years ago

Sory if this bothered you. I tried to fix this bug because i needed my panel working asap. I can't promise i will not dig into it in the future, i'm a developer, it's in my nature. I can only promise i will be less verbose when digging in :)

Thank you

devryan commented 11 years ago

This was fixed in the recent commit: https://github.com/devryan/GamePanelX-V3/commit/cda1205ccbfdfd3652b7a78f7b871b69d5981147