summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--commands/ccs2pcs.py14
-rw-r--r--filter.py4
-rw-r--r--filters/cib/configuration/__init__.py2
-rw-r--r--filters/cib/configuration/resources/__init__.py2
-rw-r--r--filters/pcscompact2pcs.py (renamed from filters/pcsprelude2pcs.py)6
-rw-r--r--filters/pcsprelude2pcscompact.py13
-rw-r--r--formats/pcs.py7
7 files changed, 37 insertions, 11 deletions
diff --git a/commands/ccs2pcs.py b/commands/ccs2pcs.py
index 3a03e6b..2b0089f 100644
--- a/commands/ccs2pcs.py
+++ b/commands/ccs2pcs.py
@@ -15,7 +15,8 @@ from ..utils_cluster import cluster_pcs_flatiron
('ccs2ccs-pcmk'),
('ccs-revitalize',
('ccsflat2pcsprelude',
- ('pcsprelude2pcs')))))
+ ('pcsprelude2pcscompact',
+ ('pcscompact2pcs'))))))
def ccs2pcs_flatiron(cmd_ctxt,
input="/etc/cluster/cluster.conf",
ccs_pcmk="cluster-{ccs2ccsflat.in.hash}.conf",
@@ -40,7 +41,9 @@ def ccs2pcs_flatiron(cmd_ctxt,
file_proto(ccs_pcmk),
(
(
- file_proto(cib),
+ (
+ file_proto(cib),
+ ),
),
),
),
@@ -50,7 +53,8 @@ def ccs2pcs_flatiron(cmd_ctxt,
@Command.deco(('ccs2ccsflat',
('ccs-revitalize',
('ccsflat2pcsprelude',
- ('pcsprelude2pcs'))),
+ ('pcsprelude2pcscompact',
+ ('pcscompact2pcs')))),
('ccs2needlexml',
('xml2simpleconfig'))))
def ccs2pcs_needle(cmd_ctxt,
@@ -75,7 +79,9 @@ def ccs2pcs_needle(cmd_ctxt,
(
(
(
- file_proto(cib),
+ (
+ file_proto(cib),
+ ),
),
),
(
diff --git a/filter.py b/filter.py
index 04d55c7..9488f75 100644
--- a/filter.py
+++ b/filter.py
@@ -694,8 +694,8 @@ class XMLFilter(Filter, MetaPlugin):
e = nselem(XSL_NS, 'apply-templates',
select="*")
template.append(e)
- if do_mix > 1:
- # if elem.getparent() is None: # and not do_mix:
+ if do_mix > 1 or elem.getparent() is None and not children:
+ # and not do_mix:
template = etree.XML(xslt_identity(''))
xslt_root.append(template)
diff --git a/filters/cib/configuration/__init__.py b/filters/cib/configuration/__init__.py
index 1efb9c7..b321283 100644
--- a/filters/cib/configuration/__init__.py
+++ b/filters/cib/configuration/__init__.py
@@ -5,7 +5,7 @@
__author__ = "Jan Pokorný <jpokorny @at@ Red Hat .dot. com>"
-pcsprelude2pcs = '''\
+pcsprelude2pcscompact = '''\
<clufter:descent-mix preserve-rest="true"/>
<!-- strip empty optional elements -->
<xsl:template match="fencing-topology[count(*) = 0]"/>
diff --git a/filters/cib/configuration/resources/__init__.py b/filters/cib/configuration/resources/__init__.py
index 09234b5..47067b0 100644
--- a/filters/cib/configuration/resources/__init__.py
+++ b/filters/cib/configuration/resources/__init__.py
@@ -4,7 +4,7 @@
# Licensed under GPLv2+ (a copy included | http://gnu.org/licenses/gpl-2.0.txt)
__author__ = "Jan Pokorný <jpokorny @at@ Red Hat .dot. com>"
-pcsprelude2pcs = '''\
+pcsprelude2pcscompact = '''\
<!--
SIMPLIFY FENCING/STONITH
-->
diff --git a/filters/pcsprelude2pcs.py b/filters/pcscompact2pcs.py
index 5219696..4d59760 100644
--- a/filters/pcsprelude2pcs.py
+++ b/filters/pcscompact2pcs.py
@@ -2,12 +2,12 @@
# Copyright 2014 Red Hat, Inc.
# Part of clufter project
# Licensed under GPLv2+ (a copy included | http://gnu.org/licenses/gpl-2.0.txt)
-"""pcsprelude2pcs filter"""
+"""pcscompact2pcs filter"""
__author__ = "Jan Pokorný <jpokorny @at@ Red Hat .dot. com>"
from ..filter import XMLFilter
-@XMLFilter.deco('pcs-prelude', 'pcs')
-def pcsprelude2pcs(flt_ctxt, in_obj):
+@XMLFilter.deco('pcs-compact', 'pcs')
+def pcscompact2pcs(flt_ctxt, in_obj):
return ('etree', flt_ctxt.ctxt_proceed_xslt(in_obj))
diff --git a/filters/pcsprelude2pcscompact.py b/filters/pcsprelude2pcscompact.py
new file mode 100644
index 0000000..1a3d8b4
--- /dev/null
+++ b/filters/pcsprelude2pcscompact.py
@@ -0,0 +1,13 @@
+# -*- coding: UTF-8 -*-
+# Copyright 2014 Red Hat, Inc.
+# Part of clufter project
+# Licensed under GPLv2+ (a copy included | http://gnu.org/licenses/gpl-2.0.txt)
+"""pcsprelude2pcscompact filter"""
+__author__ = "Jan Pokorný <jpokorny @at@ Red Hat .dot. com>"
+
+from ..filter import XMLFilter
+
+
+@XMLFilter.deco('pcs-prelude', 'pcs-compact')
+def pcsprelude2pcscompact(flt_ctxt, in_obj):
+ return ('etree', flt_ctxt.ctxt_proceed_xslt(in_obj))
diff --git a/formats/pcs.py b/formats/pcs.py
index 97a90ba..2d4d8a2 100644
--- a/formats/pcs.py
+++ b/formats/pcs.py
@@ -25,3 +25,10 @@ class pcs_prelude(pcs):
This is a result of ccsflat2pcsprelude filter.
"""
+
+
+class pcs_compact(pcs):
+ """Private, "unfinished" pacemaker-based cluster stack configuration
+
+ This is a result of pcsprelude2pcscompact filter.
+ """