| 1 | .\" Copyright (c) 2008, Christopher Cowart and contributors |
|---|
| 2 | .\" All rights reserved. |
|---|
| 3 | .\" |
|---|
| 4 | .\" Redistribution and use in source and binary forms, with or without |
|---|
| 5 | .\" modification, are permitted provided that the following conditions |
|---|
| 6 | .\" are met: |
|---|
| 7 | .\" * Redistributions of source code must retain the above copyright |
|---|
| 8 | .\" notice, this list of conditions and the following disclaimer. |
|---|
| 9 | .\" * Redistributions in binary form must reproduce the above copyright |
|---|
| 10 | .\" notice, this list of conditions and the following disclaimer in the |
|---|
| 11 | .\" documentation and/or other materials provided with the distribution. |
|---|
| 12 | .\" |
|---|
| 13 | .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|---|
| 14 | .\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|---|
| 15 | .\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|---|
| 16 | .\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|---|
| 17 | .\" OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|---|
| 18 | .\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|---|
| 19 | .\" TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|---|
| 20 | .\" PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|---|
| 21 | .\" LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|---|
| 22 | .\" NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|---|
| 23 | .\" SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|---|
| 24 | .\" |
|---|
| 25 | .\" $Id$ |
|---|
| 26 | .\" |
|---|
| 27 | .Dd May 06, 2009 |
|---|
| 28 | .Dt CONFMAN.CONF 5 |
|---|
| 29 | .Os |
|---|
| 30 | .Sh NAME |
|---|
| 31 | .Nm confman.conf |
|---|
| 32 | .Nd confman configuration file |
|---|
| 33 | .Sh SYNOPSIS |
|---|
| 34 | .Nm @sysconfdir@/confman.conf |
|---|
| 35 | .Nm ${HOME}/.confmanrc |
|---|
| 36 | .Sh DESCRIPTION |
|---|
| 37 | System-wide configurations for |
|---|
| 38 | .Xr confman 8 are read from @sysconfdir@/confman.conf. Per-user |
|---|
| 39 | configurations can be added to ${HOME}/.confmanrc. |
|---|
| 40 | .Ss FORMAT |
|---|
| 41 | Both files are standard |
|---|
| 42 | .Xr bash 1 |
|---|
| 43 | files that will be sourced by the |
|---|
| 44 | .Xr confman 8 executable. |
|---|
| 45 | In general, you will use simple assignments, |
|---|
| 46 | though there is nothing preventing you from adding more creative logic. |
|---|
| 47 | .Ss REQUIRED VALUES |
|---|
| 48 | These values must be defined: |
|---|
| 49 | .Bl -tag -width indent |
|---|
| 50 | .It REPO_PROTOCOL |
|---|
| 51 | This is the protocol portion of the |
|---|
| 52 | .Xr svn 1 repository's URI. Possible examples include "https://", "file://", |
|---|
| 53 | and "svn+ssh://". |
|---|
| 54 | .It REPO_HOSTNAME |
|---|
| 55 | For all values of REPO_PROTOCOL except "file://", REPO_HOSTNAME must be |
|---|
| 56 | set. This value should be the empty string ("") for "file://" URIs. |
|---|
| 57 | .It REPO_PATH |
|---|
| 58 | This is the path portion of the repository URI. |
|---|
| 59 | .El |
|---|
| 60 | .Ss CONFSYNC OPTIONS |
|---|
| 61 | These options control the behavior of |
|---|
| 62 | .Xr confsync 8 , |
|---|
| 63 | .Xr confexport 8 , and |
|---|
| 64 | .Xr confaudit 8 . |
|---|
| 65 | .Bl -tag -width indent |
|---|
| 66 | .It CONF_EXPORT_FILE |
|---|
| 67 | This option is used by |
|---|
| 68 | .Xr confexport 8 |
|---|
| 69 | as the location to write the tarball used with the |
|---|
| 70 | .Xr confsync 8 |
|---|
| 71 | utility. |
|---|
| 72 | .It CONF_EXPORT_USER |
|---|
| 73 | The owner of the |
|---|
| 74 | .Xr confexport 8 |
|---|
| 75 | export. Defaults to the user running |
|---|
| 76 | .Cm confexport , |
|---|
| 77 | but when running as root, the file ownership can be changed with this |
|---|
| 78 | configuration option. |
|---|
| 79 | .It CONF_EXPORT_GROUP |
|---|
| 80 | The group of the |
|---|
| 81 | .Xr confexport 8 |
|---|
| 82 | export. Defaults to wheel. |
|---|
| 83 | .It CONF_EXPORT_MODE |
|---|
| 84 | The permissions, in octal format, for the |
|---|
| 85 | .Xr confexport 8 |
|---|
| 86 | export. Defaults to 0640. |
|---|
| 87 | .It EXPORT_REPO_PROTOCOL, EXPORT_REPO_HOSTNAME, EXPORT_REPO_PATH |
|---|
| 88 | These options are analagous to their counterparts above (without the |
|---|
| 89 | EXPORT prefixes). Use these to tell |
|---|
| 90 | .Xr confexport 8 to look in an alternate location for the repository when |
|---|
| 91 | automated access is provided by a separate mechanism from the interactive |
|---|
| 92 | toolset. It can often be useful to have the repository accessible over |
|---|
| 93 | "svn+ssh://" in interactive use (e.g., |
|---|
| 94 | .Xr confman 5 ), but to have local "file://" access for |
|---|
| 95 | .Xr confexport 5 . These default to unset, in which case the repository |
|---|
| 96 | will be found using the REPO_* configurations. |
|---|
| 97 | .It CONF_EXPORT_URI |
|---|
| 98 | The URI used by |
|---|
| 99 | .Xr confsync 8 to find an export generated by |
|---|
| 100 | .Xr confexport 8 . There are URI handlers for "file://", "http://", https://", |
|---|
| 101 | "ftp://", "sftp://", and "scp://". Port numbers are not handled correctly |
|---|
| 102 | in sftp and scp URIs. |
|---|
| 103 | .It CONF_EXPORT_WORK_PATH |
|---|
| 104 | If specified, this option is used by |
|---|
| 105 | .Xr confexport 8 as the location to store a persistent working copy. |
|---|
| 106 | .It CONF_EXPORT_STYLE |
|---|
| 107 | The export style to be used by |
|---|
| 108 | .Xr confexport 8 . Valid options are: repository, module, recipe. |
|---|
| 109 | .It CONF_FETCH_SSH_KEY |
|---|
| 110 | This is a private SSH keyfile for use with "sftp://" and "scp://" URIs above. |
|---|
| 111 | .It CONF_FETCH_SSH_FLAGS |
|---|
| 112 | This options allows you to specify custom parameters to the |
|---|
| 113 | .Xr ssh 1 |
|---|
| 114 | client for |
|---|
| 115 | .Cm confsync . |
|---|
| 116 | .It CONF_SYNC_SLEEP |
|---|
| 117 | The number of seconds for |
|---|
| 118 | .Xr confsync 8 |
|---|
| 119 | to sleep when running in sleep mode. |
|---|
| 120 | .It CONF_AUDIT_SLEEP |
|---|
| 121 | The number of seconds for |
|---|
| 122 | .Xr confaudit 8 |
|---|
| 123 | to sleep when running in sleep mode. |
|---|
| 124 | .It CONF_SSH_KEY |
|---|
| 125 | This option is deprecated and will be removed in a future release. See |
|---|
| 126 | CONF_FETCH_SSH_KEY. |
|---|
| 127 | .El |
|---|
| 128 | .Ss MISCELLANEOUS OPTIONS |
|---|
| 129 | .Bl -tag -width indent |
|---|
| 130 | .It WORK_PATH |
|---|
| 131 | Defaults to "${HOME}/src/conf". Can be used to change the location of the |
|---|
| 132 | working copy. |
|---|
| 133 | .It REPO_REMOTE_USER |
|---|
| 134 | Defaults to "", using the underlying |
|---|
| 135 | .Xr svn 1 |
|---|
| 136 | behavior. Use this to override the username for the repository host. |
|---|
| 137 | .It SINGULARITIES |
|---|
| 138 | Defaults to "". This is a white-space delimited list of all files that are to |
|---|
| 139 | be treated as singularities by |
|---|
| 140 | .Xr confman 8 . |
|---|
| 141 | .It CONF_GROUP |
|---|
| 142 | Defaults to "wheel". Specify which |
|---|
| 143 | .Xr group 5 |
|---|
| 144 | should have access to various state files. |
|---|
| 145 | .It CONF_WARNING |
|---|
| 146 | This is the first line of confman banners for managed files. |
|---|
| 147 | .It LOG_TEMPLATE |
|---|
| 148 | If defined, the contents of this file will be the default log message visible |
|---|
| 149 | in a user's editor for repository commits. This can be useful if you use |
|---|
| 150 | hooks to log commits into an external issue tracker and you want to remind |
|---|
| 151 | your users to fill in the ticket number. |
|---|
| 152 | .It RECIPE_TEMPLATE |
|---|
| 153 | When new recipes are created, the contents of this file will be used. The |
|---|
| 154 | string |
|---|
| 155 | .Ar __NAME__ |
|---|
| 156 | will be replaced with the name of the recipe. This defaults to |
|---|
| 157 | @sysconfdefaultsdir@/recipe.template. |
|---|
| 158 | .It DEFAULT_MODE_DIRECTORY |
|---|
| 159 | Defaults to "0555". When new directories are created in |
|---|
| 160 | .Xr confman 8 , they will have these permissions. Note that if the directory |
|---|
| 161 | exists on the live filesystem, its real permissions will override this |
|---|
| 162 | default value. |
|---|
| 163 | .It DEFAULT_MODE_FILE |
|---|
| 164 | Defaults to "0444". When new files are created in |
|---|
| 165 | .Xr confman 8 , they will have these permissions. Note that if the file |
|---|
| 166 | exists on the live filesystem, its real permissions will override this |
|---|
| 167 | default value. Regardless of this value or the live file's mode, the write |
|---|
| 168 | bits will be masked out, causing the live file to become read-only after |
|---|
| 169 | a commit or install operation. This is to discourage users from bypassing |
|---|
| 170 | revision control of the file. You can use |
|---|
| 171 | .Cm confman chmod |
|---|
| 172 | on a file to restore the write bits if you need them. |
|---|
| 173 | .It DEFAULT_OWNER |
|---|
| 174 | Which username should own new files and directories. |
|---|
| 175 | .It DEFAULT_GROUP |
|---|
| 176 | Which group should own new files and directories. |
|---|
| 177 | .It DEFAULT_COMMENT |
|---|
| 178 | Which character typically begins comments. |
|---|
| 179 | .It DEBUG |
|---|
| 180 | Defaults to "false". Set to "true" to enable some verbose messages. Mostly |
|---|
| 181 | only useful for developers. |
|---|
| 182 | .It NFS_HACK |
|---|
| 183 | If your working copy lives on an NFS export with root_squash enabled, the |
|---|
| 184 | super user will be unable to read your working copy with its default |
|---|
| 185 | permissions. Set this to "true" to make your working copy world-readable |
|---|
| 186 | when necessary. Note that the word HACK in the name of this option should |
|---|
| 187 | be taken to heart, and there are probably better ways of getting around |
|---|
| 188 | this challenge. |
|---|
| 189 | .It LIVE_ROOT |
|---|
| 190 | This option causes |
|---|
| 191 | .Xr |
|---|
| 192 | to use an alternate path to "/" for rolling out files. This is a great way |
|---|
| 193 | to set up a sandbox and test things out before managing your live system. |
|---|
| 194 | .El |
|---|
| 195 | .Sh AUTHORS |
|---|
| 196 | .An Chris Cowart Aq ccowart@timesinks.net |
|---|