NAME
config-model-edit - Graphical model editor for Config::Model
SYNOPSIS
config-model-edit [options] -model Sshd [ class:Sshd element:Foo ... ]
# plugin mode
config-model-edit [options] -model Debian::Dpkg -plugin-file dpkg-snippet.pl
DESCRIPTION
config-model-edit will provides a Perl/Tk graphical interface to edit configuration models that will be used by Config::Model.
Config::Model is a general purpose configuration framework based on configuration models (See Config::Model for details).
This configuration model is also expressed as structured data. This structure data is structured and follow a set of rules which are described for humans in Config::Model.
The structure and rules documented in Config::Model are also expressed in a model in the files provided with Config::Model::Itself.
Hence the possibity to verify, modify configuration data provided by Config::Model can also be applied on configuration models using the same user interface as config-edit.
The model editor program is config-model-edit.
USAGE
config-model-edit
will read and write model file from ./lib/Config/Model/models
.
When you specify a -model
options, only configuration models matching this options will be loaded. I.e.
config-model-edit -model Xorg
will load models Xorg
(file Xorg.pl
) and all other Xorg::*
like Xorg::Screen
(file Xorg/Screen.pl
).
Options
- -model
-
Mandatory option that specifies the configuration model to be edited.
- -plugin-file foo.pl
-
this option can be used to create model plugins. A model plugin is an addendum to an existing model. The resulting file will be saved in a
.d
directory besides the original file to be taken into account.For instance:
$ config-model-edit -model Debian::Dpkg -plugin-file my-plugin.pl # perform additions to Debian::Dpkg and Debian::Dpkg::Control::Source and save $ find lib -name my-plugin.pl lib/Config/Model/models/Debian/Dpkg.d/my-plugin.pl lib/Config/Model/models/Debian/Dpkg/Control/Source.d/my-plugin.pl
- -trace
-
Provides a full stack trace when exiting on error.
- -force-load
-
Load file even if error are found in data. Bad data are loaded, but should be cleaned up before saving the model. See menu
File -> check
in the GUI. - -dot-diagram
-
Returns a dot file that represent the stucture of the configuration model.
include
are represented by solid lines. Class usage (i.e.config_class_name
parameter) is represented by dashed lines. The name of the element is attached to the dashed line. - -dump [ file ]
-
Dump configuration content on STDOUT or in the specified with Config::Model syntax.
By default, dump only custom values, i.e. different from application built-in values or model default values. See -dumptype option for other types of dump
- -dumptype [ full | preset | custom ]
-
Choose to dump every values (full), only preset values or only customized values (default)
- -load <cds_file_to_load> | -
-
Load model from cds file (using Config::Model serialisation format, typically done with -dump option). This option can be used with
-save
to directly save a model loaded from the cds file or from STDIN. - -load-yaml <yaml_file_to_load> | -
-
Load configuration data in model from YAML file. This option can be used with
-save
to directly save a model loaded from the YAML file or from STDIN. - -dump_yaml
-
Dump a model in YAML format
- -save
-
Force a save of the model even if no edition was done. This option is useful to migrate a model when Config::Model model feature changes.
- -dir
-
Directory where to read and write model
- -open-item 'path'
-
In graphical mode, force the UI to open the node specified. E.g.
-open_item 'class:Fstab::FsLine element:fs_mntopts rules'
LOGGING
All Config::Model logging was moved from klunky debug and verbose prints to Log::Log4perl. Logging can be configured in the following files:
-
~/.log4config-model
-
/etc/log4config-model.conf
Without these files, the following Log4perl config is used:
log4perl.logger=WARN, Screen
log4perl.appender.Screen = Log::Log4perl::Appender::Screen
log4perl.appender.Screen.stderr = 0
log4perl.appender.Screen.layout = Log::Log4perl::Layout::PatternLayout
log4perl.appender.Screen.layout.ConversionPattern = %d %m %n
Log4Perl categories are shown in "LOGGING" in config-edit
AUTHOR
Dominique Dumont, ddumont at cpan dot org
SEE ALSO
Config::Model, Config::Model::Node, Config::Model::Instance, Config::Model::HashId, Config::Model::ListId, Config::Model::WarpedNode, Config::Model::Value