Closed ghost closed 14 years ago
While I do understand your point with the settings.cfg, adding another install step would complicate things a bit. Couldn't we rather just auto-gen the settings and then ignore the cfg files?
I'm not sure I quite follow "auto-gen the settings", but I think it's reasonable if the initial launch of a server copies the template to local storage automatically (if a config doesn't already exists).
This should allow someone to run the server with no setup. However, if someone is going to be running a master server, there's already going to be some "setup" anyway.
Automatic setup would be equivalent to what I was thinking..
Added stuff to gitignore in 28b482ea2c068225894ffc3e83e1970465c22bc4
I don't quite follow the other issue you guys are discussing.
rapiscan doesn't want the server to use the serversettings files located in git, because if they are modified, committing them would cause non-default settings to be passed on to others
This isn't terribly important, but just to elaborate:
It's common practice to never put configuration files under version control. Instead, a template file is committed and the developer can make a copy of the template file for their own configuration settings. This, of course, applies to any file that each developer needs to change.
I probably shouldn't have put this in the same issue as the ignore entries, sorry about that.
Not sure which config files you are talking about.
local/*/settings.cfg are there on purpose, as that is an example directory setup for testing. For actual use, you would use a different home dir, and the template config file would be created for you there.
Ah ok. I followed the README-standalone.txt instructions, which say to use the local/*/ directories. Unless I'm missing it, there's currently no mention of local as being for test purposes (or copying over the config). Although I see that you mention HOME_DIR in README-server.txt.
So I guess this boils down to making it clear in the instructions. I think it would be helpful for config templates to have a .cfg.tmpl extension to make it extra clear that they are templates and should never be committed, but it's only my opinion.
Sorry, I don't have my workflow setup with git yet, I know this would be easier as a patch. However, I figured I would put it here so I don't forget:
Actually, instead of setting up all of these git ignore directories for "local", I don't think it should be a part of syntensity source. Instead, the settings files should be held in some mutual location, with names like:
The instructions would then tell you to put copy the templates and put them in some sensible location on your filesystem, then modify the startup script to point to the configs.
Files like this shouldn't be edited directly, nor should their additional files be added under the root source directory. This prevents any accidental commits, keeping the local repos clean, and preventing anyone trying to (inadvertently) push config changes upstream.