Skip to content

Invalid processing sibling nodes with require attributes #3

@svenkle

Description

@svenkle

I've been playing around with this package and so-far-so-good although I did notice a small issue. This may be a misunderstanding but I didn't see anything in the documentation mentioning it.

Invalid example

This example will successfully patch the data folder on the Authoring role (1st node) and will completely skip both nodes on the Delivery role (2nd node). Role appears irrelevant in this example as re-ordering the nodes produces the opposite outcome. I'll also call out that it only happens if the nodes have the exact same signature at the point where the role: is applied.

<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/">
  <sitecore>
    <sc.variable name="dataFolder" role:require="authoring">
      <patch:attribute name="value">C:\inetpub\wwwroot\sitecore-cas\Data</patch:attribute>
    </sc.variable>
    <sc.variable name="dataFolder" role:require="delivery">
      <patch:attribute name="value">C:\inetpub\wwwroot\sitecore-cds\Data</patch:attribute>
    </sc.variable>
  </sitecore>
</configuration>

Valid example

This example will successfully patch the attribute for both Authoring and Delivery roles. I assume its because in this example I use the patch: and thus nodes have a different signature.

<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:role="http://www.sitecore.net/xmlconfig/role/">
  <sitecore>
    <sc.variable name="dataFolder">
      <patch:attribute name="value" role:require="authoring">C:\inetpub\wwwroot\sitecore-cas\Data</patch:attribute>
      <patch:attribute name="value" role:require="delivery">C:\inetpub\wwwroot\sitecore-cds\Data</patch:attribute>
    </sc.variable>
  </sitecore>
</configuration>

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions