summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Pokorný <jpokorny@redhat.com>2014-10-21 11:47:09 +0200
committerJan Pokorný <jpokorny@redhat.com>2014-10-21 16:15:48 +0200
commit4574408efc01860b87d0bf240c06409775c61615 (patch)
tree4a7db8583bfd5245880b73561dd34eea8143e1bf
parent06c75be91b31559b70359ff642922eff67c39191 (diff)
downloadclufter-4574408efc01860b87d0bf240c06409775c61615.tar.gz
clufter-4574408efc01860b87d0bf240c06409775c61615.tar.xz
clufter-4574408efc01860b87d0bf240c06409775c61615.zip
filters/ccsflat2pcsprelude[rm]: untranslated resources overhaul
Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
-rw-r--r--filters/cluster/rm/__init__.py51
1 files changed, 47 insertions, 4 deletions
diff --git a/filters/cluster/rm/__init__.py b/filters/cluster/rm/__init__.py
index 0c55cf7..fbacdd2 100644
--- a/filters/cluster/rm/__init__.py
+++ b/filters/cluster/rm/__init__.py
@@ -92,6 +92,7 @@ ccs_obfuscate_identifiers = '''\
###
+from ....utils_cib import ResourceSpec
from .... import package_name
ccsflat2pcsprelude_elems = (
@@ -110,6 +111,12 @@ ccsflat2pcsprelude = ('''\
translate(@address, '/', '_')
)"/>
<primitive id="{$Prefix}">
+
+ <xsl:attribute name="description"
+ ><xsl:value-of select="concat('natively converted from ', name(),
+ ' RA')"
+ /></xsl:attribute>
+
<xsl:choose>
<!-- the nested snippets should be guarded with
@@ -117,9 +124,31 @@ ccsflat2pcsprelude = ('''\
<clufter:descent-mix at="*"/>
<xsl:otherwise>
- <xsl:message terminate="no">
- <value-of select="concat('unhandled resource: ', name())"/>
- </xsl:message>
+
+ <xsl:attribute name="description"
+ ><xsl:value-of select="concat('could not natively convert',
+ ' from ', name(), ' RA')"
+ /></xsl:attribute>
+''' + \
+ ResourceSpec('ocf:rgmanager:PLACEHOLDER').xsl_attrs \
++ '''
+ <xsl:attribute name="type"
+ ><xsl:value-of select="substring-before(
+ @rgmanager-meta-agent,
+ '.metadata'
+ )"
+ /></xsl:attribute>
+ <instance_attributes id="{$Prefix}-ATTRS">
+ <xsl:for-each select="@*[
+ name() != 'rgmanager-meta-agent'
+ ]">
+ <nvpair id="{$Prefix}-ATTRS-{name()}"
+ name="{name()}"
+ value="{.}"/>
+ </xsl:for-each>
+ </instance_attributes>
+ <xsl:comment> %(note_unhandled)s </xsl:comment>
+ <xsl:message>%(note_unhandled)s</xsl:message>
</xsl:otherwise>
</xsl:choose>
@@ -205,4 +234,18 @@ ccsflat2pcsprelude = ('''\
</xsl:for-each>
<clufter:descent at="failoverdomain"/>
-''') % dict(package_name=package_name())
+''') % dict(
+ package_name=package_name(),
+ note_unhandled='''<xsl:value-of select="concat('WARNING: resource ', name(),
+ ' is currently unhandled by',
+ ' the conversion, you are',
+ ' advised to copy ',
+ substring-before(
+ @rgmanager-meta-agent,
+ '.metadata'
+ ),
+ ' RGManager agent (incl.',
+ ' dependencies if any)',
+ ' to /usr/lib/ocf/resource.d',
+ '/rgmanager directory')"/>'''
+)