Browse Source

Merge pull request #12148 from kenrowland/HPCC-21315

HPCC-21315 Convert FTSlave XSD to new format

Reviewed-By: Xiaoming Wang <xiaoming.wang@lexisnexis.com>
Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Richard Chapman 6 years ago
parent
commit
cf6bb62f22

+ 2 - 1
initfiles/componentfiles/configschema/xsd/backupnode.xsd

@@ -25,7 +25,8 @@
         <xs:element name="BackupNodeProcess" hpcc:displayName="Backup Node Process" hpcc:itemType="backupnode" minOccurs="0" maxOccurs="unbounded" hpcc:class="component">
             <xs:complexType>
                 <xs:sequence>
-                    <xs:element name="Instance" maxOccurs="unbounded" hpcc:class="elementSet" hpcc:displayName="Instances" hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv']">
+                    <xs:element name="Instance" maxOccurs="unbounded" hpcc:class="elementSet" hpcc:displayName="Instances"
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="xs:string" hpcc:presetValue="c$\backupnode" hpcc:hidden="true"/>

+ 1 - 1
initfiles/componentfiles/configschema/xsd/dali.xsd

@@ -125,7 +125,7 @@
                 <xs:sequence>
                     <xs:element name="Instance" hpcc:itemType="hwinstance" minOccurs="1" maxOccurs="1"
                                 hpcc:class="elementSet"
-                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv']">
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="absolutePath" hpcc:hidden="true"/>

+ 2 - 1
initfiles/componentfiles/configschema/xsd/dfuserver.xsd

@@ -40,7 +40,8 @@
                         </xs:complexType>
                     </xs:element>
 
-                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet" hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv']">
+                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet"
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="absolutePath" hpcc:hidden="true"/>

+ 3 - 2
initfiles/componentfiles/configschema/xsd/eclagent.xsd

@@ -55,8 +55,9 @@
                                   hpcc:tooltip="eclAgent Workunit Execution Queue Name"/>
                 </xs:attributeGroup>
                 <xs:sequence>
-                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet"
-                                hpcc:displayName="Instances">
+                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded"
+                                hpcc:class="elementSet" hpcc:displayName="Instances"
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="xs:string" hpcc:presetValue="c$\eclagent" hpcc:hidden="true"/>

+ 3 - 2
initfiles/componentfiles/configschema/xsd/eclccserver.xsd

@@ -36,8 +36,9 @@
                                           hpcc:tooltip=""/>
                         </xs:complexType>
                     </xs:element>
-                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet"
-                                hpcc:displayName="Instances">
+                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded"
+                                hpcc:class="elementSet" hpcc:displayName="Instances"
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="xs:string" hpcc:presetValue="c$\ecl" hpcc:hidden="true"/>

+ 3 - 2
initfiles/componentfiles/configschema/xsd/eclscheduler.xsd

@@ -24,8 +24,9 @@
                     minOccurs="0" maxOccurs="unbounded" hpcc:docId="ecl.sched" hpcc:class="component">
             <xs:complexType>
                 <xs:sequence>
-                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet"
-                                hpcc:displayName="Instances">
+                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded"
+                                hpcc:class="elementSet" hpcc:displayName="Instances"
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="xs:string" hpcc:presetValue="c$\eclscheduler" hpcc:hidden="true"/>

+ 1 - 1
initfiles/componentfiles/configschema/xsd/esp.xsd

@@ -292,7 +292,7 @@
                     </xs:element>
 
                     <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet"
-                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv']">
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:sequence>
                                 <xs:element name="Certificate" type="xs:string" minOccurs="0"

+ 49 - 0
initfiles/componentfiles/configschema/xsd/ftslave_linux.xsd

@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+#    HPCC SYSTEMS software Copyright (C) 2019 HPCC Systems®.
+#
+#    Licensed under the Apache License, Version 2.0 (the "License");
+#    you may not use this file except in compliance with the License.
+#    You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS,
+#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#    See the License for the specific language governing permissions and
+#    limitations under the License.
+-->
+
+<xs:schema
+        xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"
+        xmlns:hpcc="someuri">
+    <xs:include schemaLocation="types.xsd"/>
+    <hpcc:insert hpcc:schemaPath="/Environment/Software">
+        <xs:element name="FTSlaveProcess" hpcc:displayName="FT Slave Process" hpcc:itemType="ftslave" minOccurs="0"
+                    maxOccurs="unbounded" hpcc:class="component">
+            <xs:complexType>
+                <xs:sequence>
+
+                    <xs:element name="Instance" hpcc:itemType="hwinstance" minOccurs="0" maxOccurs="unbounded" hpcc:class="elementSet">
+                        <xs:complexType>
+                            <xs:attributeGroup ref="computerNodeReference"/>
+                            <xs:attribute name="directory" type="absolutePath" hpcc:hidden="true"/>
+                            <xs:attribute name="program" type="xs:string" hpcc:displayName="Program" use="required"
+                                          hpcc:presetValue="${INSTALL_DIR}/bin/ftslave" hpcc:tooltip=""/>
+                        </xs:complexType>
+                    </xs:element>
+                    <xs:element name="Notes" type="usernotes" hpcc:displayName="Notes" minOccurs="0" maxOccurs="unbounded"/>
+                </xs:sequence>
+                <xs:attributeGroup ref="buildInfo"/>
+                <xs:attribute name="name" type="xs:string" use="required" hpcc:displayName="Name"
+                              hpcc:autoGenerateType="prefix_" hpcc:autoGenerateValue="ftslave"
+                              hpcc:uniqueKey="espprocess_name" hpcc:tooltip="Name for this process"/>
+                <xs:attribute name="description" type="xs:string" hpcc:presetValue="ESP server"
+                              hpcc:displayName="Description" hpcc:tooltip="Description for this process"/>
+                <xs:attribute name="version" type="xs:string" hpcc:displayName="Version" hpcc:presetValue="1"
+                              hpcc:tooltip="Version identifier used to select which process will be started"/>
+            </xs:complexType>
+        </xs:element>
+    </hpcc:insert>
+</xs:schema>

+ 2 - 1
initfiles/componentfiles/configschema/xsd/sasha.xsd

@@ -148,7 +148,8 @@
 
                 <xs:sequence>
 
-                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet">
+                    <xs:element name="Instance" hpcc:itemType="hwinstance" maxOccurs="unbounded" hpcc:class="elementSet"
+                                hpcc:requiredInstanceComponents="/Evnironment/Software/[#itemType='dafilesrv'],/Evnironment/Software/[#itemType='ftslave']">
                         <xs:complexType>
                             <xs:attributeGroup ref="computerNodeReference"/>
                             <xs:attribute name="directory" type="absolutePath" hpcc:hidden="true"/>