The dcsconfig project reduces the need to have separately defined configuration files for each of the programs in the DCS framework. It replaces the mysql database configuration used in previous releases.
The dcsconfig/data/default.config file should be used to specify system configurations which are the same for all of your beam lines. For example, this file is used to define the hostname and port for the program responsible for authentication, which can be a single instance running for several beam lines.
Beam line specific files should be generated for each beam line and placed within the dcsconfig/data directory as well. The names of these beam line specific file should be based on the beamline name. (e.g BL9-2.config). Any parameter defined in the beamline specific file will override any identical parameter defined in the default.config file.
As an example, this architecture allows both a server and client program to read the same configuration file to obtain the listening port of a server. The server will read the file to know which port to listen on, while the client will read the same file get the host and port to connect to. If the client and server programs reside on different machines, it is important that the local copy of the config files are the same. At SSRL, CVS is used to make sure that the distributed computers at a beam line have the latest versions of the configuration files.