DragonFly On-Line Manual Pages
CONFMAN.CONF(5) DragonFly File Formats Manual CONFMAN.CONF(5)
NAME
confman.conf - confman configuration file
SYNOPSIS
/usr/local/etc/confman.conf
${HOME}/.confmanrc
DESCRIPTION
System-wide configurations for confman(8) are read from
/usr/local/etc/confman.conf. Per-user configurations can be added to
${HOME}/.confmanrc.
FORMAT
Both files are standard bash(1) files that will be sourced by the
confman(8) executable. In general, you will use simple assignments,
though there is nothing preventing you from adding more creative logic.
REQUIRED VALUES
These values must be defined:
REPO_PROTOCOL
This is the protocol portion of the svn(1) repository's URI.
Possible examples include https://, file://, and "svn+ssh://".
REPO_HOSTNAME
For all values of REPO_PROTOCOL except "file://", REPO_HOSTNAME
must be set. This value should be the empty string ("") for
"file://" URIs.
REPO_PATH
This is the path portion of the repository URI.
CONFSYNC OPTIONS
These options control the behavior of confsync(8), confexport(8), and
confaudit(8).
CONF_EXPORT_FILE
This option is used by confexport(8) as the location to write the
tarball used with the confsync(8) utility.
CONF_EXPORT_USER
The owner of the confexport(8) export. Defaults to the user
running confexport, but when running as root, the file ownership
can be changed with this configuration option.
CONF_EXPORT_GROUP
The group of the confexport(8) export. Defaults to wheel.
CONF_EXPORT_MODE
The permissions, in octal format, for the confexport(8) export.
Defaults to 0640.
EXPORT_REPO_PROTOCOL, EXPORT_REPO_HOSTNAME, EXPORT_REPO_PATH
These options are analagous to their counterparts above (without
the EXPORT prefixes). Use these to tell confexport(8) to look in
an alternate location for the repository when automated access is
provided by a separate mechanism from the interactive toolset. It
can often be useful to have the repository accessible over
"svn+ssh://" in interactive use (e.g., confman(5) ), but to have
local file:// access for confexport(5). These default to unset,
in which case the repository will be found using the REPO_*
configurations.
CONF_EXPORT_URI
The URI used by confsync(8) to find an export generated by
confexport(8). There are URI handlers for file://, http://,
https://", "ftp://", "sftp://", and "scp://". Port numbers are
not handled correctly in sftp and scp URIs.
CONF_EXPORT_WORK_PATH
If specified, this option is used by confexport(8) as the
location to store a persistent working copy.
CONF_EXPORT_STYLE
The export style to be used by confexport(8). Valid options are:
repository, module, recipe.
CONF_EXPORT_INCREMENTAL
This option optimizes confexport(8) performance. When enabled,
confexport(8) will only export the changes made to the confman(8)
repository since the last confexport(8) run. This option has no
effect when using repository-style exports.
CONF_EXPORT_INCREMENTAL_LN
This option further optimizes confexport(8) performance when
using CONF_EXPORT_INCREMENTAL. When enabled, confexport(8) will
use ln(1) to copy unchanged exports into the new export rather
than cp(1). This option can only be used if temporary files are
created on the same filesystem partition as CONF_EXPORT_FILE.
CONF_EXPORT_FILEDB
This option optimizes confexport(8) and confsync(8) performance.
When enabled, confexport(8) will convert repository metadata from
Subversion metadata into a proprietary file-backed metadata
format and exclude all Subversion working-copy-related files from
exports. This significantly reduces the file size of export
tarballs. This also eliminates the previous requirement that the
version of Subversion be matched between confexport(8) and
confsync(8) machines.
CONF_EXPORT_FILEDB_PLUS_SVN
When enabled, confexport(8) will also include Subversion metadata
in export tarballs. This allows multiple versions of confsync
clients to be supported in parallel by a single confexport
server. Upgraded confsync clients will automatically prefer to
use the filedb metadata when it is available. This option has no
effect unless CONF_EXPORT_FILEDB is also enabled.
CONF_FETCH_SSH_KEY
This is a private SSH keyfile for use with "sftp://" and "scp://"
URIs above.
CONF_FETCH_SSH_FLAGS
This options allows you to specify custom parameters to the
ssh(1) client for confsync.
CONF_SYNC_SLEEP
The number of seconds for confsync(8) to sleep when running in
sleep mode.
CONF_AUDIT_SLEEP
The number of seconds for confaudit(8) to sleep when running in
sleep mode.
CONF_SSH_KEY
This option is deprecated and will be removed in a future
release. See CONF_FETCH_SSH_KEY.
MISCELLANEOUS OPTIONS
WORK_PATH
Defaults to "${HOME}/src/conf". Can be used to change the
location of the working copy.
REPO_REMOTE_USER
Defaults to "", using the underlying svn(1) behavior. Use this to
override the username for the repository host.
SINGULARITIES
Defaults to "". This is a white-space delimited list of all files
that are to be treated as singularities by confman(8).
CONF_GROUP
Defaults to "wheel". Specify which group(5) should have access to
various state files.
CONF_WARNING
This is the first line of confman banners for managed files.
LOG_TEMPLATE
If defined, the contents of this file will be the default log
message visible in a user's editor for repository commits. This
can be useful if you use hooks to log commits into an external
issue tracker and you want to remind your users to fill in the
ticket number.
RECIPE_TEMPLATE
When new recipes are created, the contents of this file will be
used. The string __NAME__ will be replaced with the name of the
recipe. This defaults to /usr/local/etc/defaults/recipe.template.
DEFAULT_MODE_DIRECTORY
Defaults to "0555". When new directories are created in
confman(8), they will have these permissions. Note that if the
directory exists on the live filesystem, its real permissions
will override this default value.
DEFAULT_MODE_FILE
Defaults to "0444". When new files are created in confman(8),
they will have these permissions. Note that if the file exists on
the live filesystem, its real permissions will override this
default value. Regardless of this value or the live file's mode,
the write bits will be masked out, causing the live file to
become read-only after a commit or install operation. This is to
discourage users from bypassing revision control of the file. You
can use confman chmod on a file to restore the write bits if you
need them.
DEFAULT_OWNER
Which username should own new files and directories.
DEFAULT_GROUP
Which group should own new files and directories.
DEFAULT_COMMENT
Which character typically begins comments.
DEBUG Defaults to "false". Set to "true" to enable some verbose
messages. Mostly only useful for developers.
NFS_HACK
If your working copy lives on an NFS export with root_squash
enabled, the super user will be unable to read your working copy
with its default permissions. Set this to "true" to make your
working copy world-readable when necessary. Note that the word
HACK in the name of this option should be taken to heart, and
there are probably better ways of getting around this challenge.
LIVE_ROOT
This option causes confman(8) to use an alternate path to "/" for
rolling out files. This is a great way to set up a sandbox and
test things out before managing your live system.
UPDATE_RELEVANT_ONLY
Defaults to "false". Set it to "true" to cause confman(8) to
update only the files relevant to the host's recipe when running
a commit or an install. Additionally, confman update will update
only the recipe-relevant files when given no additional
arguments.
CONF_COMMIT_REPO_ONLY
Defaults to "false". Set it to "true" to change the behavior of
confman(8) "commit" to a repository-only operation, with no
regard for the current machine's recipe or the subsequent rollout
to the filesystem. This is useful in centrally managed
confexport/confsync environments.
AUTHORS
Chris Cowart <ccowart@timesinks.net>
DragonFly 6.5-DEVELOPMENT May 6, 2009 DragonFly 6.5-DEVELOPMENT