diff options
author | Amy Griffis <amy.griffis@hp.com> | 2009-10-08 18:06:40 +0200 |
---|---|---|
committer | Daniel Veillard <veillard@redhat.com> | 2009-10-08 18:06:40 +0200 |
commit | e1a2fe6af283b809b7af54da6ab0b7821d01ee32 (patch) | |
tree | 14b223d07ea67eb95bbb40be9874f8b03c7428ee | |
parent | LXC add driver config file lxc.conf (diff) | |
download | libvirt-e1a2fe6af283b809b7af54da6ab0b7821d01ee32.tar.gz libvirt-e1a2fe6af283b809b7af54da6ab0b7821d01ee32.tar.bz2 libvirt-e1a2fe6af283b809b7af54da6ab0b7821d01ee32.zip |
LXC add augeas support for config file
* src/lxc/libvirtd_lxc.aug src/lxc/test_libvirtd_lxc.aug: augeas schemas
for lxc.conf
* src/Makefile.am libvirt.spec.in: glue the new augeas files in
-rw-r--r-- | libvirt.spec.in | 10 | ||||
-rw-r--r-- | src/Makefile.am | 36 | ||||
-rw-r--r-- | src/lxc/libvirtd_lxc.aug | 30 | ||||
-rw-r--r-- | src/lxc/test_libvirtd_lxc.aug | 31 |
4 files changed, 97 insertions, 10 deletions
diff --git a/libvirt.spec.in b/libvirt.spec.in index a9a284799..93a3b1da6 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -539,6 +539,11 @@ rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug %endif %find_lang %{name} +%if ! %{with_lxc} +rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_lxc.aug +rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug +endif + %if ! %{with_python} rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libvirt-python-%{version} %endif @@ -677,6 +682,11 @@ fi %{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug %endif +%if %{with_lxc} +%{_datadir}/augeas/lenses/libvirtd_lxc.aug +%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug +%endif + %{_datadir}/augeas/lenses/libvirtd.aug %{_datadir}/augeas/lenses/tests/test_libvirtd.aug diff --git a/src/Makefile.am b/src/Makefile.am index ffc6581fe..d0ef7d1c7 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -35,6 +35,12 @@ mod_LTLIBRARIES = confdir = $(sysconfdir)/libvirt conf_DATA = +augeasdir = $(datadir)/augeas/lenses +augeas_DATA = + +augeastestdir = $(datadir)/augeas/lenses/tests +augeastest_DATA = + # These files are not related to driver APIs. Simply generic # helper APIs for various purposes UTIL_SOURCES = \ @@ -435,15 +441,8 @@ libvirt_driver_qemu_la_SOURCES = $(QEMU_DRIVER_SOURCES) conf_DATA += qemu/qemu.conf -augeasdir = $(datadir)/augeas/lenses -augeas_DATA = qemu/libvirtd_qemu.aug - -augeastestdir = $(datadir)/augeas/lenses/tests -augeastest_DATA = qemu/test_libvirtd_qemu.aug - -check-local: - test -x '$(AUGPARSE)' \ - && '$(AUGPARSE)' -I $(srcdir) $(srcdir)/test_libvirtd_qemu.aug || : +augeas_DATA += qemu/libvirtd_qemu.aug +augeastest_DATA += qemu/test_libvirtd_qemu.aug endif EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug qemu/test_libvirtd_qemu.aug @@ -466,8 +465,11 @@ libvirt_driver_lxc_la_SOURCES = $(LXC_DRIVER_SOURCES) conf_DATA += lxc/lxc.conf +augeas_DATA += lxc/libvirtd_lxc.aug +augeastest_DATA += lxc/test_libvirtd_lxc.aug + endif -EXTRA_DIST += lxc/lxc.conf +EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug if WITH_UML if WITH_DRIVER_MODULES @@ -692,6 +694,20 @@ EXTRA_DIST += \ $(SECRET_DRIVER_SOURCES) \ $(VBOX_DRIVER_EXTRA_DIST) +check-local: +if WITH_QEMU + if test -x '$(AUGPARSE)'; then \ + '$(AUGPARSE)' -I $(srcdir)/qemu \ + $(srcdir)/qemu/test_libvirtd_qemu.aug; \ + fi +endif +if WITH_LXC + if test -x '$(AUGPARSE)'; then \ + '$(AUGPARSE)' -I $(srcdir)/lxc \ + $(srcdir)/lxc/test_libvirtd_lxc.aug; \ + fi +endif + # # Build our version script. This is composed of three parts: # diff --git a/src/lxc/libvirtd_lxc.aug b/src/lxc/libvirtd_lxc.aug new file mode 100644 index 000000000..10f25e4ef --- /dev/null +++ b/src/lxc/libvirtd_lxc.aug @@ -0,0 +1,30 @@ +(* /etc/libvirt/lxc.conf *) + +module Libvirtd_lxc = + autoload xfm + + let eol = del /[ \t]*\n/ "\n" + let value_sep = del /[ \t]*=[ \t]*/ " = " + let indent = del /[ \t]*/ "" + + let bool_val = store /0|1/ + + let bool_entry (kw:string) = [ key kw . value_sep . bool_val ] + + + (* Config entry grouped by function - same order as example config *) + let log_entry = bool_entry "log_with_libvirtd" + + (* Each enty in the config is one of the following three ... *) + let entry = log_entry + let comment = [ label "#comment" . del /#[ \t]*/ "# " . store /([^ \t\n][^\n]*)?/ . del /\n/ "\n" ] + let empty = [ label "#empty" . eol ] + + let record = indent . entry . eol + + let lns = ( record | comment | empty ) * + + let filter = incl "/etc/libvirt/lxc.conf" + . Util.stdexcl + + let xfm = transform lns filter diff --git a/src/lxc/test_libvirtd_lxc.aug b/src/lxc/test_libvirtd_lxc.aug new file mode 100644 index 000000000..e757b82d9 --- /dev/null +++ b/src/lxc/test_libvirtd_lxc.aug @@ -0,0 +1,31 @@ +module Test_libvirtd_lxc = + + let conf = "# Master configuration file for the LXC driver. +# All settings described here are optional - if omitted, sensible +# defaults are used. + +# By default, log messages generated by the lxc controller go to the +# container logfile. It is also possible to accumulate log messages +# from all lxc controllers along with libvirtd's log outputs. In this +# case, the lxc controller will honor either LIBVIRT_LOG_OUTPUTS or +# log_outputs from libvirtd.conf. +# +# This is disabled by default, uncomment below to enable it. +# +log_with_libvirtd = 1 +" + + test Libvirtd_lxc.lns get conf = +{ "#comment" = "Master configuration file for the LXC driver." } +{ "#comment" = "All settings described here are optional - if omitted, sensible" } +{ "#comment" = "defaults are used." } +{ "#empty" } +{ "#comment" = "By default, log messages generated by the lxc controller go to the" } +{ "#comment" = "container logfile. It is also possible to accumulate log messages" } +{ "#comment" = "from all lxc controllers along with libvirtd's log outputs. In this" } +{ "#comment" = "case, the lxc controller will honor either LIBVIRT_LOG_OUTPUTS or" } +{ "#comment" = "log_outputs from libvirtd.conf." } +{ "#comment" = "" } +{ "#comment" = "This is disabled by default, uncomment below to enable it." } +{ "#comment" = "" } +{ "log_with_libvirtd" = "1" } |