From 9a6cae4e5ed2c8615c17d462d5aa5b7828cdb23b Mon Sep 17 00:00:00 2001 From: Sol Jerome Date: Sun, 3 Jun 2012 16:58:00 -0500 Subject: man: Clean up man pages Created new rst files with man page information so that generating man pages is easier and more consistent throughout bcfg2. Signed-off-by: Sol Jerome --- tools/manpagegen/bcfg2-lint.8.ronn | 119 +++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 tools/manpagegen/bcfg2-lint.8.ronn (limited to 'tools/manpagegen/bcfg2-lint.8.ronn') diff --git a/tools/manpagegen/bcfg2-lint.8.ronn b/tools/manpagegen/bcfg2-lint.8.ronn new file mode 100644 index 000000000..e089bf2e7 --- /dev/null +++ b/tools/manpagegen/bcfg2-lint.8.ronn @@ -0,0 +1,119 @@ +bcfg2-lint(8) -- Check Bcfg2 specification for validity, common mistakes, and style +=================================================================================== + +## SYNOPSIS + +`bcfg2-lint` [] [ [...]] + +## DESCRIPTION + +`bcfg2-lint` checks the Bcfg2 specification for schema validity, common +mistakes, and other criteria. It can be quite helpful in finding typos +or malformed data. + +`bcfg2-lint` exits with a return value of 2 if errors were found, and 3 +if warnings (but no errors) were found. Any other non-0 exit value +denotes some failure in the script itself. + +`bcfg2-lint` is a rewrite of the older bcfg2-repo-validate tool. + +## OPTIONS + + * `-C` : + Specify alternate bcfg2.conf location. + + * `-Q`: + Specify the server repository path. + + * `-v`: + Be verbose. + + * `--lint-config`: + Specify path to bcfg2-lint.conf (default `/etc/bcfg2-lint.conf`). + + * `--stdin`: + Rather than operating on all files in the Bcfg2 specification, only + validate a list of files supplied on stdin. This mode is + particularly useful in pre-commit hooks. + + This makes a few assumptions: + + Metadata files will only be checked if a valid chain of XIncludes + can be followed all the way from clients.xml or groups.xml. Since + there are multiple formats of metadata stored in Metadata/ (i.e., + clients and groups), there is no way to determine which sort of + data a file contains unless there is a valid chain of XIncludes. + It may be useful to always specify all metadata files should be + checked, even if not all of them have changed. + + Property files will only be validated if both the property file + itself and its matching schema are included on stdin. + + * `require-schema`: + Require property files to have matching schema files. + +## PLUGINS + +See `bcfg2-lint.conf`(5) for more information on the configuration of +the plugins listed below. + + * `Bundles`: + Check the specification for several issues with Bundler: bundles + referenced in metadata but not found in `Bundler/`; bundles whose + *name* attribute does not match the filename; and Genshi template + bundles that use the ** tag (which is not processed in + templated bundles). + + * `Comments`: + Check the specification for VCS keywords and any comments that are + required. By default, this only checks that the *$Id$* keyword is + included and expanded in all files. You may specify VCS keywords to + check and comments to be required in the config file. (For instance, + you might require that every file have a "Maintainer" comment.) + + In XML files, only comments are checked for the keywords and + comments required. + + * `Duplicates`: + Check for several types of duplicates in the Metadata: duplicate + groups; duplicate clients; and multiple default groups. + + * `InfoXML`: + Check that certain attributes are specified in `info.xml` files. By + default, requires that *owner*, *group*, and *perms* are specified. + Can also require that an `info.xml` exists for all Cfg files, and + that paranoid mode be enabled for all files. + + * `MergeFiles`: + Suggest that similar probes and config files be merged into single + probes or TGenshi templates. + + * `Pkgmgr`: + Check for duplicate packages specified in Pkgmgr. + + * `RequiredAttrs`: + Check that all *Path* and *BoundPath* tags have the attributes that + are required by their type (e.g., a path of type symlink must have + name and to specified to be valid). This sort of validation is + beyond the scope of an XML schema. + + * `Validate`: + Validate the Bcfg2 specification against the XML schemas. + + Property files are freeform XML, but if a `.xsd` file with a + matching filename is provided, then schema validation will be + performed on property files individually as well. For instance, if + you have a property file named `ntp.xml` then by placing a schema + for that file in `ntp.xsd` schema validation will be performed on + `ntp.xml`. + +## BUGS + +`bcfg2-lint` may not handle some older plugins as well as it handles +newer ones. For instance, there may be some places where it expects all +of your configuration files to be handled by Cfg rather than by a mix of +Cfg and TGenshi or TCheetah. + +## SEE ALSO + +bcfg2(1), bcfg2-server(8), bcfg2-lint.conf(5) -- cgit v1.2.3-1-g7c22