cbais_conf - CBAIS configuration files
There are a number of configuration files in the CBAIS application. The CBAIS.conf file is the global configuration file. It defines site wide settings, options, the local projects.
Each host in the system may have a CBAIS host config file (usually hostname.conf. This file defines the actual disk partitioning, operating system, and application configurations for the host.
The CBAIS.conf config file contains the following sections. Each section corresponds to a named scalar reference to perl anonymous hash.
The Options section defines the settings of optional parameters used throughout CBAIS. They are listed below
The Actions section defines an anonymous hash which maps the valid actions and the perl packages which implement them. The classes must implement the CBAIS::Actions:Action interface. There is also an ability to specifiy filters to operate on the class config files before they are passed to the action object constructors (via the filters section).
e.g.
$Actions = {
append => { package => 'CBAIS::Actions::Append', },
cmd => { package => 'CBAIS::Actions::Cmd', },
copy => { package => 'CBAIS::Actions::Copy',
filters => [ 'CBAIS::Config::UIDFilter', ], },
...
};
The Projects section defines the projects and their specific configurations which are valid for this site. A project is a directory tree of CBAIS configs and data. Individual hosts can be configured to look for their configuration and data in different projects (in a defined search order). Thius enables administrators to segregate control of machines to different user groups. An example projects definition is shown below.
$Projects = {
project2 => {
root => "$ENV{CBAIS_ROOT}/project2",
},
project1 => {
root => "$ENV{CBAIS_ROOT}/project1",
},
default => {
root => "$ENV{CBAIS_ROOT}/default",
},
};
The CBAIS host config file is used to define the actual configuration of a host. This includes the configuration of disks, operating system, and applications which are installed on the host. The file must be a valid perl script which returns an anonymous hash. The following keys are recognised in the CBAIS host config file.
=item B<ethernet>
The ethernet address of this host. If the host has multiple interfaces this should be the primary interface's address.
An example file is shown below
require 'Classes.conf';
# return
{
ethernet => '00:a0:24:76:f4:70',
ip-address => '192.168.0.33',
kickstart_file => '/export/cbais/RedHat/ks/zetland',
aliases => [ 'ldap' ],
cbais_options => ['-a!patches', '-v' ],
classes => [ 'I3SP_CLIENT', ],
};
There are a number of environment variables which may be used to alter CBAIS default behaviours.