NAME
Config::Augeas::Exporter - Export the Augeas tree to various formats
SYNOPSIS
use Config::Augeas::Exporter
# Initiliaze
my $aug = Config::Augeas::Exporter->new( root => $aug_root );
# Export to XML
my $doc = $aug->to_xml(
path => ['/files/etc/fstab', '/files/etc/apt'],
exclude => ['#comment', '#mcomment'],
file_stat => 1,
);
print $doc->toString;
# Restore from XML
open (my $fh, "<$file")
or die "E: Could not open $file: $!\n" ;
my $doc = XML::LibXML->load_xml(IO => $fh);
close $fh;
my $aug = Config::Augeas::Exporter->new(root => $root);
$aug->from_xml(xml => $doc);
DESCRIPTION
This module allows to export the Augeas tree to various formats and import back from these formats to the configuration files.
Constructor
new ( ... )
Creates a new Config::Augeas::Exporter object. Optional parameters are:
- augeas
-
A Config::Augeas object. If not provided, a new one will be created.
- root
-
Use
root
as the filesystem root.
Methods
to_xml( ... )
Export the Augeas tree to a XML::LibXML::Document object.
- path
-
An array of Augeas paths to export. If ommitted, it will default to '/files'.
- exclude
-
An array of label patterns to exclude from the export.
- file_stat
-
A boolean, whether to include file stat.
to_hash( ... )
Export the Augeas tree to a hash.
- path
-
path
is the Augeas path to export. If ommitted, it will default to '/files'. - exclude
-
A list of label patterns to exclude from the export.
to_yaml( ... )
Export the Augeas tree to YAML.
- path
-
path
is the Augeas path to export. If ommitted, it will default to '/files'. - exclude
-
A list of label patterns to exclude from the export.
to_json( ... )
Export the Augeas tree to JSON.
- path
-
path
is the Augeas path to export. If ommitted, it will default to '/files'. - exclude
-
A list of label patterns to exclude from the export.
from_xml( ... )
Restore the Augeas tree from an XML::LibXML::Document object. This method considers the files listed in the XML document, and replaces the corresponding files in the Augeas tree with the contents of the XML.
- xml
-
The XML::LibXML::Document to use as source for import.
- create_dirs
-
Boolean value, whether to create the directories if missing.
SEE ALSO
Config::Augeas : The Config::Augeas module
http://augeas.net/ : The Augeas project page
AUTHOR
Raphaël Pinson, <raphink at cpan dot org>
CONTRIBUTING
This module is developed on Launchpad at:
https://launchpad.net/config-augeas-exporter
Feel free to fork the repository and submit pull requests
COPYRIGHT AND LICENSE
Copyright (C) 2011 by Raphaël Pinson
This library is free software; you can redistribute it and/or modify it under the LGPL terms.