Service model XML schema complex types

AppInstanceDefinitionType complexType

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name AppInstanceDefinitionType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AppInstanceDefinitionType">
    <xs:sequence>
      <xs:element name="Parameters">
        <xs:annotation>
          <xs:documentation>List of parameters for the application as defined in application manifest and their respective values.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:attributeGroup ref="NameValuePair"/>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="Name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Name of the application to be created.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

Name of the application to be created.

Attribute Value
name Name
type xs:string
use required

Content element details

Parameters

List of parameters for the application as defined in application manifest and their respective values.

Attribute Value
name Parameters

ApplicationHealthPolicyType complexType

Describes the policy for evaluating health events reported on various application-related entities. If no policy is specified, an entity is assumed to be unhealthy if the health report is a warning or error.

Attribute Value
content 2 element(s), 2 attribute(s)
defined globally
name ApplicationHealthPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ApplicationHealthPolicyType">
    <xs:annotation>
      <xs:documentation>Describes the policy for evaluating health events reported on various application-related entities. If no policy is specified, an entity is assumed to be unhealthy if the health report is a warning or error.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="DefaultServiceTypeHealthPolicy" type="ServiceTypeHealthPolicyType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specifies the default service type health policy, which will replace the default health policy for all service types in the application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServiceTypeHealthPolicy" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Describes the policy for evaluating health events reported on services, partitions and replicas of a particular service type.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="ServiceTypeHealthPolicyType">
              <xs:attribute name="ServiceTypeName" type="xs:string" use="required">
                <xs:annotation>
                  <xs:documentation>The name of the service type that the policy will be applied to.</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="ConsiderWarningAsError" type="xs:string" use="optional" default="false">
      <xs:annotation>
        <xs:documentation>Specifies whether to treat warning health reports as errors during health evaluation. Default: false.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MaxPercentUnhealthyDeployedApplications" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Specifies the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error. This is calculated by dividing the number of unhealthy deployed applications over the number of nodes that the applications are currently deployed on in the cluster. The computation rounds up to tolerate one failure on small numbers of nodes. Default percentage: 0.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

ConsiderWarningAsError

Specifies whether to treat warning health reports as errors during health evaluation. Default: false.

Attribute Value
name ConsiderWarningAsError
type xs:string
use optional
default false

MaxPercentUnhealthyDeployedApplications

Specifies the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error. This is calculated by dividing the number of unhealthy deployed applications over the number of nodes that the applications are currently deployed on in the cluster. The computation rounds up to tolerate one failure on small numbers of nodes. Default percentage: 0.

Attribute Value
name MaxPercentUnhealthyDeployedApplications
type xs:string
use optional
default 0

Content element details

DefaultServiceTypeHealthPolicy

Specifies the default service type health policy, which will replace the default health policy for all service types in the application.

Attribute Value
name DefaultServiceTypeHealthPolicy
type ServiceTypeHealthPolicyType
minOccurs 0

ServiceTypeHealthPolicy

Describes the policy for evaluating health events reported on services, partitions and replicas of a particular service type.

Attribute Value
name ServiceTypeHealthPolicy
minOccurs 0
maxOccurs unbounded

ApplicationInstanceType complexType

Describes an instance of an Azure Service Fabric application.

Attribute Value
content 4 element(s), 1 attribute(s)
defined globally
name ApplicationInstanceType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ApplicationInstanceType">
    <xs:annotation>
      <xs:documentation>Describes an instance of an Azure Service Fabric application.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ApplicationPackageRef">
        <xs:complexType>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="ServicePackageRef" maxOccurs="unbounded">
        <xs:complexType>
          <xs:attribute name="Name" use="required"/>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="ServiceTemplates" type="ServiceTemplatesType"/>
      <xs:element name="DefaultServices" type="DefaultServicesType"/>
    </xs:sequence>
    <xs:attribute name="Version" type="xs:int" use="required">
      <xs:annotation>
        <xs:documentation>The version of the ApplicationInstance document.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attributeGroup ref="ApplicationInstanceAttrGroup"/>
    <xs:attributeGroup ref="ApplicationManifestAttrGroup"/>
  </xs:complexType>

Attribute details

Version

The version of the ApplicationInstance document.

Attribute Value
name Version
type xs:int
use required

Content element details

ApplicationPackageRef

Attribute Value
name ApplicationPackageRef

ServicePackageRef

Attribute Value
name ServicePackageRef
maxOccurs unbounded

ServiceTemplates

Attribute Value
name ServiceTemplates
type ServiceTemplatesType

DefaultServices

Attribute Value
name DefaultServices
type DefaultServicesType

ApplicationManifestType complexType

Declaratively describes the application type and version. One or more service manifests of the constituent services are referenced to compose an application type. Configuration settings of the constituent services can be overridden using parameterized application settings. Default services, service templates, principals, policies, diagnostics set-up, and certificates can also declared at the application level.

Attribute Value
content 9 element(s), 0 attribute(s)
defined globally
name ApplicationManifestType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ApplicationManifestType">
    <xs:annotation>
      <xs:documentation>Declaratively describes the application type and version. One or more service manifests of the constituent services are referenced to compose an application type. Configuration settings of the constituent services can be overridden using parameterized application settings. Default services, service templates, principals, policies, diagnostics set-up, and certificates can also declared at the application level.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Description" type="xs:string" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Text describing this application.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Parameters" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Declares the parameters that are used in this application manifest. The value of these parameters can be supplied when the application is instantiated and can be used to override application or service configuration settings.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Parameter" block="" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>An application parameter to be used in this manifest. The parameter value can be changed during application instantiation, or, if no value is supplied the default value is used.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:attribute name="Name" use="required">
                  <xs:annotation>
                    <xs:documentation>The name of the parameter to be used in the manifest as "[Name]".</xs:documentation>
                  </xs:annotation>
                  <xs:simpleType>
                    <xs:restriction base="xs:string">
                      <xs:minLength value="1"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="DefaultValue" type="xs:string" use="required">
                  <xs:annotation>
                    <xs:documentation>Default value for the parameter, used if the parameter value is not provided during application instantiation.</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ServiceManifestImport" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Imports a service manifest created by the service developer. A service manifest must be imported for each constituent service in the application. Configuration overrides and policies can be declared for the service manifest.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ServiceManifestRef" type="ServiceManifestRefType"/>
            <xs:element name="ConfigOverrides" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Describes configuration overrides for the imported service manifest. Configuration overrides allow the flexibility of re-using the same service manifests across multiple application types by overriding the service manifest's configuration only when used with a particular application type. Configuration overrides can change any default configuration in a service manifest as long as default configuration is defined using the Settings.xml in the ConfigPackage folder. </xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="ConfigOverride" type="ConfigOverrideType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element name="ResourceOverrides" type="ResourceOverridesType" minOccurs="0"/>
            <xs:element name="EnvironmentOverrides" type="EnvironmentOverridesType" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="Policies" type="ServiceManifestImportPoliciesType" minOccurs="0"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ServiceTemplates" type="ServiceTemplatesType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Declares the set of permitted service types that can be created dynamically inside the application instance. Default configuration values, such as replication factor, are specified and used as a template for creating service instances.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="DefaultServices" type="DefaultServicesType" minOccurs="0">

      </xs:element>
      <xs:element name="Principals" type="SecurityPrincipalsType" minOccurs="0"/>
      <xs:element name="Policies" type="ApplicationPoliciesType" minOccurs="0"/>
      <xs:element name="Diagnostics" type="DiagnosticsType" minOccurs="0"/>
      <xs:element name="Certificates" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Declares certificates used to secure endpoints or encrypt secrets within the application manifest or a cluster manifest.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence maxOccurs="unbounded">
            <xs:element name="SecretsCertificate" type="FabricCertificateType" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Declares a certificate used to encrypt sensitive information within the application manifest. The application author uses the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt the sensitive information, which is copied to a Parameter in the ConfigOverrides section.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="EndpointCertificate" type="EndpointCertificateType" minOccurs="0"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attributeGroup ref="ApplicationManifestAttrGroup"/>

  </xs:complexType>

Content element details

Description

Text describing this application.

Attribute Value
name Description
type xs:string
minOccurs 0

Parameters

Declares the parameters that are used in this application manifest. The value of these parameters can be supplied when the application is instantiated and can be used to override application or service configuration settings.

Attribute Value
name Parameters
minOccurs 0

ServiceManifestImport

Imports a service manifest created by the service developer. A service manifest must be imported for each constituent service in the application. Configuration overrides and policies can be declared for the service manifest.

Attribute Value
name ServiceManifestImport
maxOccurs unbounded

ServiceTemplates

Declares the set of permitted service types that can be created dynamically inside the application instance. Default configuration values, such as replication factor, are specified and used as a template for creating service instances.

Attribute Value
name ServiceTemplates
type ServiceTemplatesType
minOccurs 0

DefaultServices

Attribute Value
name DefaultServices
type DefaultServicesType
minOccurs 0

Principals

Attribute Value
name Principals
type SecurityPrincipalsType
minOccurs 0

Policies

Attribute Value
name Policies
type ApplicationPoliciesType
minOccurs 0

Diagnostics

Attribute Value
name Diagnostics
type DiagnosticsType
minOccurs 0

Certificates

Declares certificates used to secure endpoints or encrypt secrets within the application manifest or a cluster manifest.

Attribute Value
name Certificates
minOccurs 0

ApplicationPackageType complexType

ApplicationPackage represents the versioned Application information required by the node.

Attribute Value
content 2 element(s), 2 attribute(s)
defined globally
name ApplicationPackageType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ApplicationPackageType">
    <xs:annotation>
      <xs:documentation>ApplicationPackage represents the versioned Application information required by the node.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="DigestedEnvironment" type="EnvironmentType"/>
      <xs:element name="DigestedCertificates">
        <xs:complexType>
          <xs:sequence maxOccurs="unbounded">
            <xs:element name="SecretsCertificate" type="FabricCertificateType" minOccurs="0"/>
            <xs:element name="EndpointCertificate" type="EndpointCertificateType" minOccurs="0"/>
          </xs:sequence>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="ApplicationTypeName" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Type identifier for this application.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attributeGroup ref="VersionedItemAttrGroup"/>
    <xs:attributeGroup ref="ApplicationInstanceAttrGroup"/>
    <xs:attribute name="ContentChecksum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Checksum value of this ApplicationPackage content</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

ApplicationTypeName

Type identifier for this application.

Attribute Value
name ApplicationTypeName
type xs:string
use required

ContentChecksum

Checksum value of this ApplicationPackage content

Attribute Value
name ContentChecksum
type xs:string

Content element details

DigestedEnvironment

Attribute Value
name DigestedEnvironment
type EnvironmentType

DigestedCertificates

Attribute Value
name DigestedCertificates

ApplicationPoliciesType complexType

Describes the policies (log collection, default run-as, health, and security access) to be applied at the application level.

Attribute Value
content 4 element(s), 0 attribute(s)
defined globally
name ApplicationPoliciesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ApplicationPoliciesType">
                <xs:annotation>
                        <xs:documentation>Describes the policies (log collection, default run-as, health, and security access) to be applied at the application level.</xs:documentation>
                </xs:annotation>
                <xs:all>
                        <xs:element name="LogCollectionPolicies" minOccurs="0">
                                <xs:annotation>
                                        <xs:documentation>Specifies whether log collection is enabled. Works only in an Azure cluster environment</xs:documentation>
                                </xs:annotation>
                                <xs:complexType>
                                        <xs:sequence maxOccurs="unbounded">
                                                <xs:element name="LogCollectionPolicy">
                                                        <xs:complexType>
                                                                <xs:attribute name="Path" type="xs:string" use="optional"/>
                                                        </xs:complexType>
                                                </xs:element>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="DefaultRunAsPolicy" minOccurs="0">
                                <xs:annotation>
                                        <xs:documentation>Specify a default user account for all service code packages that don't have a specific RunAsPolicy defined in the ServiceManifestImport section.</xs:documentation>
                                </xs:annotation>
                                <xs:complexType>
                                        <xs:attribute name="UserRef" type="xs:string" use="required">
                                                <xs:annotation>
                                                        <xs:documentation>The user account that the service code packages will run as.  The user account must be declared in the Principals section. Often it is preferable to run the setup entry point using a local system account rather than an administrators account.</xs:documentation>
                                                </xs:annotation>
                                        </xs:attribute>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="HealthPolicy" type="ApplicationHealthPolicyType" minOccurs="0"/>
                        <xs:element name="SecurityAccessPolicies" minOccurs="0">
                                <xs:annotation>
                                        <xs:documentation>List of security policies applied to resources at the application level.</xs:documentation>
                                </xs:annotation>
                                <xs:complexType>
                                        <xs:sequence maxOccurs="unbounded">
                                                <xs:element name="SecurityAccessPolicy" type="SecurityAccessPolicyType"/>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                </xs:all>
        </xs:complexType>

Content element details

LogCollectionPolicies

Specifies whether log collection is enabled. Works only in an Azure cluster environment

Attribute Value
name LogCollectionPolicies
minOccurs 0

DefaultRunAsPolicy

Specify a default user account for all service code packages that don't have a specific RunAsPolicy defined in the ServiceManifestImport section.

Attribute Value
name DefaultRunAsPolicy
minOccurs 0

HealthPolicy

Attribute Value
name HealthPolicy
type ApplicationHealthPolicyType
minOccurs 0

SecurityAccessPolicies

List of security policies applied to resources at the application level.

Attribute Value
name SecurityAccessPolicies
minOccurs 0

AzureBlobETWType complexType

Describes an Azure blob store destination for ETW events. Works only in Azure environment.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name AzureBlobETWType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AzureBlobETWType">
    <xs:annotation>
      <xs:documentation>Describes an Azure blob store destination for ETW events. Works only in Azure environment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="AzureBlobType">
        <xs:attributeGroup ref="LevelFilter"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AzureBlobType complexType

Describes an Azure blob store destination for diagnostics data. Works only in Azure cluster environment.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name AzureBlobType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AzureBlobType">
    <xs:annotation>
      <xs:documentation>Describes an Azure blob store destination for diagnostics data. Works only in Azure cluster environment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="AzureStoreBaseType">
        <xs:attributeGroup ref="ContainerName"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

AzureRoleType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name AzureRoleType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AzureRoleType">
    <xs:attribute name="RoleName" type="xs:string" use="required"/>
    <xs:attribute name="NodeTypeRef" type="xs:string" use="required"/>
    <xs:attribute name="SeedNodeCount" type="xs:int" use="optional" default="0"/>
  </xs:complexType>

Attribute details

RoleName

Attribute Value
name RoleName
type xs:string
use required

NodeTypeRef

Attribute Value
name NodeTypeRef
type xs:string
use required

SeedNodeCount

Attribute Value
name SeedNodeCount
type xs:int
use optional
default 0

AzureStoreBaseType complexType

Describes a diagnostic store in an Azure storage account.

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name AzureStoreBaseType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AzureStoreBaseType">
    <xs:annotation>
      <xs:documentation>Describes a diagnostic store in an Azure storage account.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="Parameters" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="IsEnabled"/>
    <xs:attributeGroup ref="ConnectionString"/>
    <xs:attribute name="ConnectionStringIsEncrypted" type="xs:string" use="required"/>
    <xs:attributeGroup ref="UploadIntervalInMinutes"/>
    <xs:attributeGroup ref="DataDeletionAgeInDays"/>
  </xs:complexType>

Attribute details

ConnectionStringIsEncrypted

Attribute Value
name ConnectionStringIsEncrypted
type xs:string
use required

Content element details

None

Attribute Value
ref Parameters
minOccurs 0

BlackbirdRoleType complexType

Attribute Value
content 0 element(s), 4 attribute(s)
defined globally
name BlackbirdRoleType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="BlackbirdRoleType">
    <xs:attribute name="EnvironmentName" type="xs:string" use="required"/>
    <xs:attribute name="RoleName" type="xs:string" use="required"/>
    <xs:attribute name="NodeTypeRef" type="xs:string" use="required"/>
    <xs:attribute name="IsSeedNode" type="xs:boolean" use="optional" default="0"/>
  </xs:complexType>

Attribute details

EnvironmentName

Attribute Value
name EnvironmentName
type xs:string
use required

RoleName

Attribute Value
name RoleName
type xs:string
use required

NodeTypeRef

Attribute Value
name NodeTypeRef
type xs:string
use required

IsSeedNode

Attribute Value
name IsSeedNode
type xs:boolean
use optional
default 0

CertificatesType complexType

Attribute Value
content 4 element(s), 0 attribute(s)
defined globally
name CertificatesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="CertificatesType">
    <xs:all>
      <xs:element name="ClusterCertificate" type="FabricCertificateType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>The certificate used to secure the intra cluster communication.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServerCertificate" type="FabricCertificateType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>The certificate used to secure the intra cluster communication.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ClientCertificate" type="FabricCertificateType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>The default admin role client certificate used to secure client server communication.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="UserRoleClientCertificate" type="FabricCertificateType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>The default user role client certificate used to secure client server communication.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:all>
  </xs:complexType>

Content element details

ClusterCertificate

The certificate used to secure the intra cluster communication.

Attribute Value
name ClusterCertificate
type FabricCertificateType
minOccurs 0

ServerCertificate

The certificate used to secure the intra cluster communication.

Attribute Value
name ServerCertificate
type FabricCertificateType
minOccurs 0

ClientCertificate

The default admin role client certificate used to secure client server communication.

Attribute Value
name ClientCertificate
type FabricCertificateType
minOccurs 0

UserRoleClientCertificate

The default user role client certificate used to secure client server communication.

Attribute Value
name UserRoleClientCertificate
type FabricCertificateType
minOccurs 0

ClusterManifestType complexType

Describes an Azure Service Fabric Cluster.

Attribute Value
content 4 element(s), 3 attribute(s)
defined globally
name ClusterManifestType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ClusterManifestType">
                <xs:annotation>
                        <xs:documentation>Describes an Azure Service Fabric Cluster.</xs:documentation>
                </xs:annotation>
                <xs:all>
                        <xs:element name="NodeTypes" minOccurs="1">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element name="NodeType" maxOccurs="unbounded">
                                                        <xs:annotation>
                                                                <xs:documentation>Describe a node type.</xs:documentation>
                                                        </xs:annotation>
                                                        <xs:complexType>
                                                                <xs:all>
                                                                        <xs:element name="Endpoints" type="FabricEndpointsType" minOccurs="0">
                                                                                <xs:annotation>
                                                                                        <xs:documentation>Describe the endpoints associated with this node type</xs:documentation>
                                                                                </xs:annotation>
                                                                        </xs:element>
                                                                          <xs:element name="KtlLoggerSettings" type="FabricKtlLoggerSettingsType" minOccurs="0">
                                                                            <xs:annotation>
                                                                              <xs:documentation>Describe the KtlLogger information associated with this node type</xs:documentation>
                                                                            </xs:annotation>
                                                                          </xs:element>
                                                                          <xs:element name="LogicalDirectories" minOccurs="0">
                                                                            <xs:annotation>
                                                                              <xs:documentation>Describe the LogicalDirectories settings associated with this node type</xs:documentation>
                                                                            </xs:annotation>
                                                                            <xs:complexType>
                                                                              <xs:sequence>
                                                                                <xs:element name="LogicalDirectory" type="LogicalDirectoryType" maxOccurs="unbounded"/>
                                                                              </xs:sequence>
                                                                            </xs:complexType>
                                                                          </xs:element>
                                                                          <xs:element name="Certificates" type="CertificatesType" minOccurs="0">
                                                                                <xs:annotation>
                                                                                        <xs:documentation>Describe the certificates associated with this node type</xs:documentation>
                                                                                </xs:annotation>
                                                                        </xs:element>
                                                                        <xs:element name="PlacementProperties" minOccurs="0">
                                                                                <xs:annotation>
                                                                                        <xs:documentation>Describe the properties for this NodeType that will be used as placement constraints</xs:documentation>
                                                                                </xs:annotation>
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="Property" type="KeyValuePairType" minOccurs="0" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                        <xs:element name="Capacities" minOccurs="0">
                                                                                <xs:annotation>
                                                                                        <xs:documentation>The capacities of various metrics for this node type</xs:documentation>
                                                                                </xs:annotation>
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="Capacity" type="KeyValuePairType" minOccurs="0" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                        <xs:element name="SfssRgPolicies" minOccurs="0">
                                                                                <xs:annotation>
                                                                                        <xs:documentation>The SF system services resource governance policy for this node type</xs:documentation>
                                                                                </xs:annotation>
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="SfssRgPolicy" type="KeyValuePairType" minOccurs="0" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                </xs:all>
                                                                <xs:attribute name="Name" type="xs:string" use="required">
                                                                        <xs:annotation>
                                                                                <xs:documentation>Name of the NodeType</xs:documentation>
                                                                        </xs:annotation>
                                                                </xs:attribute>
                                                        </xs:complexType>
                                                </xs:element>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="Infrastructure">
                                <xs:complexType>
                                        <xs:choice>
                                                <xs:element name="WindowsServer">
                                                        <xs:complexType>
                                                                <xs:complexContent>
                                                                        <xs:extension base="WindowsInfrastructureType">
                                                                                <xs:attribute name="IsScaleMin" type="xs:boolean" default="false"/>
                                                                        </xs:extension>
                                                                </xs:complexContent>
                                                        </xs:complexType>
                                                </xs:element>
            <xs:element name="Linux">
              <xs:complexType>
                <xs:complexContent>
                  <xs:extension base="LinuxInfrastructureType">
                    <xs:attribute name="IsScaleMin" type="xs:boolean" default="false"/>
                  </xs:extension>
                </xs:complexContent>
              </xs:complexType>
            </xs:element>
                                                <xs:element name="WindowsAzure">
                                                        <xs:complexType>
                                                                <xs:sequence>
                                                                        <xs:element name="Roles">
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="Role" type="AzureRoleType" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                </xs:sequence>
                                                        </xs:complexType>
                                                </xs:element>
                                                <xs:element name="WindowsAzureStaticTopology">
                                                        <xs:complexType>
                                                                <xs:complexContent>
                                                                        <xs:extension base="WindowsInfrastructureType"/>
                                                                </xs:complexContent>
                                                        </xs:complexType>
                                                </xs:element>
                                                <xs:element name="Blackbird">
                                                        <xs:complexType>
                                                                <xs:sequence>
                                                                        <xs:element name="Roles">
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="Role" type="BlackbirdRoleType" minOccurs="1" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                </xs:sequence>
                                                        </xs:complexType>
                                                </xs:element>
                                                <xs:element name="PaaS">
                                                        <xs:complexType>
                                                                <xs:all>
                                                                        <xs:element name="Roles">
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="Role" type="PaaSRoleType" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                        <xs:element name="Votes">
                                                                                <xs:complexType>
                                                                                        <xs:sequence>
                                                                                                <xs:element name="Vote" type="PaaSVoteType" maxOccurs="unbounded"/>
                                                                                        </xs:sequence>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                </xs:all>
                                                        </xs:complexType>
                                                </xs:element>
                                        </xs:choice>
                                </xs:complexType>
                        </xs:element>
                        <xs:element name="FabricSettings" type="SettingsOverridesType" minOccurs="0"/>
                        <xs:element name="Certificates" minOccurs="0">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element name="SecretsCertificate" type="FabricCertificateType" minOccurs="0"/>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                </xs:all>
                <xs:attribute name="Name" use="required">
                        <xs:annotation>
                                <xs:documentation>Name of the Cluster.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Version" use="required">
                        <xs:annotation>
                                <xs:documentation>User-defined version string for the cluster manifest document.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Description">
                        <xs:annotation>
                                <xs:documentation>Description for the Cluster Manifest.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
        </xs:complexType>

Attribute details

Name

Name of the Cluster.

Attribute Value
name Name
use required

Version

User-defined version string for the cluster manifest document.

Attribute Value
name Version
use required

Description

Description for the Cluster Manifest.

Attribute Value
name Description

Content element details

NodeTypes

Attribute Value
name NodeTypes
minOccurs 1

Infrastructure

Attribute Value
name Infrastructure

FabricSettings

Attribute Value
name FabricSettings
type SettingsOverridesType
minOccurs 0

Certificates

Attribute Value
name Certificates
minOccurs 0

CodePackageType complexType

Describes a code package that supports a defined service type. When a service is instantiated against one of these service types, all code packages declared in this manifest are activated by running their entry points. The resulting processes are expected to register the supported service types at run time. When there are multiple code packages, they are all activated whenever the system looks for any one of the declared service types.

Attribute Value
content 3 element(s), 2 attribute(s)
defined globally
name CodePackageType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="CodePackageType">
    <xs:annotation>
          <xs:documentation>Describes a code package that supports a defined service type. When a service is instantiated against one of these service types, all code packages declared in this manifest are activated by running their entry points. The resulting processes are expected to register the supported service types at run time. When there are multiple code packages, they are all activated whenever the system looks for any one of the declared service types.</xs:documentation>
        </xs:annotation>
    <xs:sequence>
      <xs:element name="SetupEntryPoint" minOccurs="0">
        <xs:annotation>
          <xs:documentation>A privileged entry point that by default runs with the same credentials as Service Fabric (typically the NETWORKSERVICE account) before any other entry point. The executable specified by EntryPoint is typically the long-running service host. The presence of a separate setup entry point avoids having to run the service host with high privileges for extended periods of time.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ExeHost" type="ExeHostEntryPointType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="EntryPoint" type="EntryPointDescriptionType" minOccurs="1"/>
      <xs:element name="EnvironmentVariables" type="EnvironmentVariablesType" minOccurs="0" maxOccurs="1"/>
    </xs:sequence>
    <xs:attributeGroup ref="VersionedName"/>
    <xs:attribute name="IsShared" type="xs:boolean" default="false">
      <xs:annotation>
        <xs:documentation>Indicates if the contents of this code package are shared by other code packages. If true, on an upgrade of this code package, all code packages will be restarted. This attribute is currently not supported and it's value will be ignored.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="IsActivator" type="xs:boolean" default="false">
      <xs:annotation>
        <xs:documentation>This attribute is for internal use only.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

IsShared

Indicates if the contents of this code package are shared by other code packages. If true, on an upgrade of this code package, all code packages will be restarted. This attribute is currently not supported and it's value will be ignored.

Attribute Value
name IsShared
type xs:boolean
default false

IsActivator

This attribute is for internal use only.

Attribute Value
name IsActivator
type xs:boolean
default false

Content element details

SetupEntryPoint

A privileged entry point that by default runs with the same credentials as Service Fabric (typically the NETWORKSERVICE account) before any other entry point. The executable specified by EntryPoint is typically the long-running service host. The presence of a separate setup entry point avoids having to run the service host with high privileges for extended periods of time.

Attribute Value
name SetupEntryPoint
minOccurs 0

EntryPoint

Attribute Value
name EntryPoint
type EntryPointDescriptionType
minOccurs 1

EnvironmentVariables

Attribute Value
name EnvironmentVariables
type EnvironmentVariablesType
minOccurs 0
maxOccurs 1

ConfigOverrideType complexType

Describes the configuration overrides for a particular config package in the imported service manifest.

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name ConfigOverrideType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ConfigOverrideType">
    <xs:annotation>
      <xs:documentation>Describes the configuration overrides for a particular config package in the imported service manifest.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Settings" type="SettingsOverridesType" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="Name" use="required">
      <xs:annotation>
        <xs:documentation>The name of the configuration package in the service manifest which contains the setting(s) to be overridden.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

The name of the configuration package in the service manifest which contains the setting(s) to be overridden.

Attribute Value
name Name
use required

Content element details

Settings

Attribute Value
name Settings
type SettingsOverridesType
minOccurs 0

ConfigPackageDescriptionType complexType

Declares a folder, named by the Name attribute, that contains a Settings.xml file. This file contains sections of user-defined, key-value pair settings that the process can read back at run time. During an upgrade, if only the ConfigPackage version has changed, then the running process is not restarted. Instead, a callback notifies the process that configuration settings have changed so they can be reloaded dynamically.

Attribute Value
content 0 element(s), 4 attribute(s)
defined globally
name ConfigPackageDescriptionType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ConfigPackageDescriptionType">
    <xs:annotation>
      <xs:documentation>Declares a folder, named by the Name attribute, that contains a Settings.xml file. This file contains sections of user-defined, key-value pair settings that the process can read back at run time. During an upgrade, if only the ConfigPackage version has changed, then the running process is not restarted. Instead, a callback notifies the process that configuration settings have changed so they can be reloaded dynamically.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="Name" use="required">
      <xs:annotation>
        <xs:documentation>Name of the versioned item.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="SectionName" use="required">
      <xs:annotation>
        <xs:documentation>Section Name of the ConfigPackage Settings.xml.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="MountPoint" type="xs:string" use="optional" default=""/>
    <xs:attribute name="EnvironmentVariableName" type="xs:string" use="optional" default=""/>
  </xs:complexType>

Attribute details

Name

Name of the versioned item.

Attribute Value
name Name
use required

SectionName

Section Name of the ConfigPackage Settings.xml.

Attribute Value
name SectionName
use required

MountPoint

Attribute Value
name MountPoint
type xs:string
use optional
default

EnvironmentVariableName

Attribute Value
name EnvironmentVariableName
type xs:string
use optional
default

ConfigPackagePoliciesType complexType

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name ConfigPackagePoliciesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ConfigPackagePoliciesType">
    <xs:sequence>
      <xs:element name="ConfigPackage" type="ConfigPackageDescriptionType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="CodePackageRef" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

CodePackageRef

Attribute Value
name CodePackageRef
use required

Content element details

ConfigPackage

Attribute Value
name ConfigPackage
type ConfigPackageDescriptionType
minOccurs 0
maxOccurs unbounded

ConfigPackageType complexType

Declares a folder, named by the Name attribute, under PackageRoot that contains a Settings.xml file. This file contains sections of user-defined, key-value pair settings that the process can read back at run time. During an upgrade, if only the ConfigPackage version has changed, then the running process is not restarted. Instead, a callback notifies the process that configuration settings have changed so they can be reloaded dynamically.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name ConfigPackageType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ConfigPackageType">
    <xs:annotation>
          <xs:documentation>Declares a folder, named by the Name attribute, and PackageRoot that contains a Settings.xml file. This file contains sections of user-defined, key-value pair settings that the process can read back at run time. During an upgrade, if only the ConfigPackage version has changed, then the running process is not restarted. Instead, a callback notifies the process that configuration settings have changed so they can be reloaded dynamically.</xs:documentation>
        </xs:annotation>
    <xs:attributeGroup ref="VersionedName"/>
  </xs:complexType>

ContainerCertificateType complexType

Specifies information about an X509 certificate which is to be exposed to the container environment. The certificate must be installed in the LocalMachine store of all the cluster nodes. When the application starts, the runtime reads the certificate and generates a PFX file and password (on Windows) or a PEM file (on Linux). The PFX file and password are accessible in the container using the Certificates_ServicePackageName_CodePackageName_CertName_PFX and Certificates_ServicePackageName_CodePackageName_CertName_Password environment variables. The PEM file is accessible in the container using the Certificates_ServicePackageName_CodePackageName_CertName_PEM and Certificates_ServicePackageName_CodePackageName_CertName_PrivateKey environment variables.

Attribute Value
content 0 element(s), 8 attribute(s)
defined globally
name ContainerCertificateType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerCertificateType">
    <xs:annotation>
        <xs:documentation>Specifies information about an X509 certificate which is to be exposed to the container environment. The certificate must be installed in the LocalMachine store of all the cluster nodes.
          When the application starts, the runtime reads the certificate and generates a PFX file and password (on Windows) or a PEM file (on Linux).
          The PFX file and password are accessible in the container using the Certificates_ServicePackageName_CodePackageName_CertName_PFX and
          Certificates_ServicePackageName_CodePackageName_CertName_Password environment variables. The PEM file is accessible in the container using the
          Certificates_ServicePackageName_CodePackageName_CertName_PEM and Certificates_ServicePackageName_CodePackageName_CertName_PrivateKey environment variables.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="X509StoreName" type="xs:string" default="My">
        <xs:annotation>
            <xs:documentation>The store name for the X509 certificate.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
    <xs:attribute name="X509FindValue" type="xs:string" use="optional">
        <xs:annotation>
            <xs:documentation>The thumbprint of the X509 certificate.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
    <xs:attribute name="DataPackageRef" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>The name of data package that has the certificate files.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="DataPackageVersion" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>The version of data package that has the certificate files.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="RelativePath" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>The relative path to the certificate file inside data package.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Password" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>Password/Private key for the certificate.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="IsPasswordEncrypted" type="xs:boolean" default="false">
        <xs:annotation>
           <xs:documentation>If true, the value of password is encrypted.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Name" type="xs:string" use="required">
        <xs:annotation>
            <xs:documentation>Identifier for the specific certificate information. This name is used to set the environment variable in the container.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

X509StoreName

The store name for the X509 certificate.

Attribute Value
name X509StoreName
type xs:string
default My

X509FindValue

The thumbprint of the X509 certificate.

Attribute Value
name X509FindValue
type xs:string
use optional

DataPackageRef

The name of data package that has the certificate files.

Attribute Value
name DataPackageRef
type xs:string
use optional

DataPackageVersion

The version of data package that has the certificate files.

Attribute Value
name DataPackageVersion
type xs:string
use optional

RelativePath

The relative path to the certificate file inside data package.

Attribute Value
name RelativePath
type xs:string
use optional

Password

Password/Private key for the certificate.

Attribute Value
name Password
type xs:string
use optional

IsPasswordEncrypted

If true, the value of password is encrypted.

Attribute Value
name IsPasswordEncrypted
type xs:boolean
default false

Name

Identifier for the specific certificate information. This name is used to set the environment variable in the container.

Attribute Value
name Name
type xs:string
use required

ContainerHealthConfigType complexType

Specifies docker HEALTHCHECK integration options for the container.

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name ContainerHealthConfigType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerHealthConfigType">
    <xs:annotation>
        <xs:documentation>Specifies docker HEALTHCHECK integration options for the container.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="IncludeDockerHealthStatusInSystemHealthReport" type="xs:boolean" use="optional" default="true">
        <xs:annotation>
            <xs:documentation>If the container has HEALTHCHECK enabled and docker reports health_status event for this container, 
            Service Fabric will include this as part of system reported health. When health_status is unhealthy
            Service Fabric will report a health warning. By default it is set to true.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
    <xs:attribute name="RestartContainerOnUnhealthyDockerHealthStatus" type="xs:boolean" use="optional" default="false">
        <xs:annotation>
            <xs:documentation>If the container has HEALTHCHECK enabled and docker reports health_status event for this container, 
            Service Fabric will restart the container when health_status reported by docker is unhealthy.
            By default it is set to false.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
  </xs:complexType>  

Attribute details

IncludeDockerHealthStatusInSystemHealthReport

If the container has HEALTHCHECK enabled and docker reports health_status event for this container, Service Fabric will include this as part of system reported health. When health_status is unhealthy Service Fabric will report a health warning. By default it is set to true.

Attribute Value
name IncludeDockerHealthStatusInSystemHealthReport
type xs:boolean
use optional
default true

RestartContainerOnUnhealthyDockerHealthStatus

If the container has HEALTHCHECK enabled and docker reports health_status event for this container, Service Fabric will restart the container when health_status reported by docker is unhealthy. By default it is set to false.

Attribute Value
name RestartContainerOnUnhealthyDockerHealthStatus
type xs:boolean
use optional
default false

ContainerHostEntryPointType complexType

Attribute Value
content 4 element(s), 0 attribute(s)
defined globally
name ContainerHostEntryPointType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerHostEntryPointType">
    <xs:sequence>
      <!--container image name-->

      <xs:element name="ImageName" type="xs:string">
        <xs:annotation>
          <xs:documentation>The repo and image on https://hub.docker.com or Azure Container Registry.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <!--comma delimited list of commands for container-->

      <xs:element name="Commands" type="xs:string" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Pass a comma delimited list of commands to the container.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="EntryPoint" type="xs:string" minOccurs="0" maxOccurs="1"/>
      <xs:element name="FromSource" type="xs:string" minOccurs="0" maxOccurs="1"/>
    </xs:sequence>
  </xs:complexType>

Content element details

ImageName

The repo and image on https://hub.docker.com or Azure Container Registry.

Attribute Value
name ImageName
type xs:string

Commands

Pass a comma delimited list of commands to the container.

Attribute Value
name Commands
type xs:string
minOccurs 0
maxOccurs 1

EntryPoint

Attribute Value
name EntryPoint
type xs:string
minOccurs 0
maxOccurs 1

FromSource

Attribute Value
name FromSource
type xs:string
minOccurs 0
maxOccurs 1

ContainerHostPoliciesType complexType

Attribute Value
content 10 element(s), 8 attribute(s)
defined globally
name ContainerHostPoliciesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerHostPoliciesType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element name="RepositoryCredentials" type="RepositoryCredentialsType" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Credentials for container image repository to pull images from.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="HealthConfig" type="ContainerHealthConfigType" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Specifies docker HEALTHCHECK integration options for the container.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="PortBinding" type="PortBindingType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Specifies which endpoint resource to bind to the exposed container port.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CertificateRef" type="ContainerCertificateType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Specifies information for a certificate which will be exposed to the container.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="LogConfig" type="ContainerLoggingDriverType" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Specifies the logging driver for a container.</xs:documentation>
        </xs:annotation>
      </xs:element>
        <xs:element name="NetworkConfig" type="ContainerNetworkConfigType" minOccurs="0" maxOccurs="1">
            <xs:annotation>
                <xs:documentation>Specifies the network configuration for a container.</xs:documentation>
            </xs:annotation>
        </xs:element>
        <xs:element name="Volume" type="ContainerVolumeType" minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
                <xs:documentation>Specifies the volume to be bound to container.</xs:documentation>
            </xs:annotation>
        </xs:element>
      <xs:element name="SecurityOption" type="SecurityOptionsType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Specifies securityoptions for the container.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ImageOverrides" type="ImageOverridesType" minOccurs="0" maxOccurs="1">
      <xs:annotation>
        <xs:documentation>Image names corresponding to OS build number to be launched.</xs:documentation>
      </xs:annotation>
      </xs:element>
      <xs:element name="Label" type="ContainerLabelType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
            <xs:documentation>Specifies the labels for the container.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:choice>    
    <xs:attribute name="CodePackageRef" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="UseDefaultRepositoryCredentials" type="xs:string" use="optional" default="false">
      <xs:annotation>
        <xs:documentation>Use the default repository credentials specified in clusterManifest.xml
        instead of the credentials specified in the "RepositoryCredentials" tag inside ApplicationManifest.xml.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UseTokenAuthenticationCredentials" type="xs:string" use="optional" default="false">
      <xs:annotation>
        <xs:documentation>Use MSI token authentication (or a custom specified endpoint) to obtain a token used for authentication.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Isolation" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>Isolation mode for container. Valid values are default, process or Hyper-V (only supported for Windows containers).</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Hostname" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>Specify Hostname for container.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ContainersRetentionCount" use="optional" type="xs:string" default="0">
      <xs:annotation>
        <xs:documentation>Number of containers to leave behind when container repeatedly dies. By default this is set to 0 so no containers will be left behind.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="AutoRemove" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>Flag indicating whether removal of containers will occur automatically (true) or not (false) if the container is killed.  If false SF manually remove the containers.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="RunInteractive" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>Run container with interactive flag enabled. Valid values are true/false. false by default.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

CodePackageRef

Attribute Value
name CodePackageRef
use required

UseDefaultRepositoryCredentials

Use the default repository credentials specified in clusterManifest.xml instead of the credentials specified in the "RepositoryCredentials" tag inside ApplicationManifest.xml.

Attribute Value
name UseDefaultRepositoryCredentials
type xs:string
use optional
default false

UseTokenAuthenticationCredentials

Use MSI token authentication (or a custom specified endpoint) to obtain a token used for authentication.

Attribute Value
name UseTokenAuthenticationCredentials
type xs:string
use optional
default false

Isolation

Isolation mode for container. Valid values are default, process or Hyper-V (only supported for Windows containers).

Attribute Value
name Isolation
use optional
type xs:string

Hostname

Specify Hostname for container.

Attribute Value
name Hostname
use optional
type xs:string

ContainersRetentionCount

Number of containers to leave behind when container repeatedly dies. By default this is set to 0 so no containers will be left behind.

Attribute Value
name ContainersRetentionCount
use optional
type xs:string
default 0

AutoRemove

Flag indicating whether removal of containers will occur automatically (true) or not (false) if the container is killed. If false SF manually remove the containers.

Attribute Value
name AutoRemove
use optional
type xs:string

RunInteractive

Run container with interactive flag enabled. Valid values are true/false. false by default.

Attribute Value
name RunInteractive
use optional
type xs:string

Content element details

RepositoryCredentials

Credentials for container image repository to pull images from.

Attribute Value
name RepositoryCredentials
type RepositoryCredentialsType
minOccurs 0
maxOccurs 1

HealthConfig

Specifies docker HEALTHCHECK integration options for the container.

Attribute Value
name HealthConfig
type ContainerHealthConfigType
minOccurs 0
maxOccurs 1

PortBinding

Specifies which endpoint resource to bind to the exposed container port.

Attribute Value
name PortBinding
type PortBindingType
minOccurs 0
maxOccurs unbounded

CertificateRef

Specifies information for a certificate which will be exposed to the container.

Attribute Value
name CertificateRef
type ContainerCertificateType
minOccurs 0
maxOccurs unbounded

LogConfig

Specifies the logging driver for a container.

Attribute Value
name LogConfig
type ContainerLoggingDriverType
minOccurs 0
maxOccurs 1

NetworkConfig

Specifies the network configuration for a container.

Attribute Value
name NetworkConfig
type ContainerNetworkConfigType
minOccurs 0
maxOccurs 1

Volume

Specifies the volume to be bound to container.

Attribute Value
name Volume
type ContainerVolumeType
minOccurs 0
maxOccurs unbounded

SecurityOption

Specifies securityoptions for the container.

Attribute Value
name SecurityOption
type SecurityOptionsType
minOccurs 0
maxOccurs unbounded

ImageOverrides

Image names corresponding to OS build number to be launched.

Attribute Value
name ImageOverrides
type ImageOverridesType
minOccurs 0
maxOccurs 1

Label

Specifies the labels for the container.

Attribute Value
name Label
type ContainerLabelType
minOccurs 0
maxOccurs unbounded

ContainerLabelType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name ContainerLabelType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerLabelType">
      <xs:attribute name="Name" type="xs:string" use="required"/>
      <xs:attribute name="Value" type="xs:string" use="required"/>
  </xs:complexType>

Attribute details

Name

Attribute Value
name Name
type xs:string
use required

Value

Attribute Value
name Value
type xs:string
use required

ContainerLoggingDriverType complexType

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name ContainerLoggingDriverType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerLoggingDriverType">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element name="DriverOption" type="DriverOptionType" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                  <xs:documentation>Driver options to be passed to driver.</xs:documentation>
              </xs:annotation>
          </xs:element>
      </xs:choice>
    <xs:attribute name="Driver" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Driver

Attribute Value
name Driver
use required

Content element details

DriverOption

Driver options to be passed to driver.

Attribute Value
name DriverOption
type DriverOptionType
minOccurs 0
maxOccurs unbounded

ContainerNetworkConfigType complexType

Attribute Value
content 0 element(s), 1 attribute(s)
defined globally
name ContainerNetworkConfigType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerNetworkConfigType">
        <xs:attribute name="NetworkType" use="required" type="xs:string">
            <xs:annotation>
                <xs:documentation>NetworkType. Currently supported types are "Open" and "Isolated".</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

Attribute details

NetworkType

NetworkType. Currently supported types are "Open" and "Isolated".

Attribute Value
name NetworkType
use required
type xs:string

ContainerNetworkPolicyEndpointBindingType complexType

Attribute Value
content 0 element(s), 1 attribute(s)
defined globally
name ContainerNetworkPolicyEndpointBindingType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerNetworkPolicyEndpointBindingType">
    <xs:attribute name="EndpointRef">
      <xs:annotation>
        <xs:documentation>The name of the endpoint, which must be declared in the Resources section of the service manifest.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

EndpointRef

The name of the endpoint, which must be declared in the Resources section of the service manifest.

Attribute Value
name EndpointRef

ContainerNetworkPolicyType complexType

Describes association between a service package and a container network and optionally association between endpoints of the service package and the container network.

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name ContainerNetworkPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerNetworkPolicyType">
    <xs:annotation>
      <xs:documentation>Describes association between a service package and a container network and optionally association between endpoints of the service package and the container network.</xs:documentation>
    </xs:annotation>
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element name="EndpointBinding" type="ContainerNetworkPolicyEndpointBindingType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Specifies an endpoint that should be exposed on the container network.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:choice>
    <xs:attribute name="NetworkRef" use="required">
      <xs:annotation>
        <xs:documentation>The name of the container network (case-insensitive). It has to be name of a container network already created or reserved names including "Open" or "NAT".</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

NetworkRef

The name of the container network (case-insensitive). It has to be name of a container network already created or reserved names including "Open" or "NAT".

Attribute Value
name NetworkRef
use required

Content element details

EndpointBinding

Specifies an endpoint that should be exposed on the container network.

Attribute Value
name EndpointBinding
type ContainerNetworkPolicyEndpointBindingType
minOccurs 0
maxOccurs unbounded

ContainerVolumeType complexType

Attribute Value
content 1 element(s), 4 attribute(s)
defined globally
name ContainerVolumeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ContainerVolumeType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="DriverOption" type="DriverOptionType" minOccurs="0" maxOccurs="unbounded">
                <xs:annotation>
                    <xs:documentation>Driver options to be passed to driver.</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:choice>
        <xs:attribute name="Source" use="required">
          <xs:annotation>
            <xs:documentation>The source folder which can be a folder in the VM that hosts the containers or a persistent remote store.</xs:documentation>
          </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:minLength value="1"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="Destination" use="required">
          <xs:annotation>
            <xs:documentation>The location that the Source is mapped to within the running container. Thus, your destination can't be a location that already exists within your container.</xs:documentation>
          </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:minLength value="1"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="Driver" use="optional">
          <xs:annotation>
            <xs:documentation>The driver name for the Azure Files volume plugin is "sfazurefile".</xs:documentation>
          </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="IsReadOnly" type="xs:boolean" default="false"/>
    </xs:complexType>

Attribute details

Source

The source folder which can be a folder in the VM that hosts the containers or a persistent remote store.

Attribute Value
name Source
use required

Destination

The location that the Source is mapped to within the running container. Thus, your destination can't be a location that already exists within your container.

Attribute Value
name Destination
use required

Driver

The driver name for the Azure Files volume plugin is "sfazurefile".

Attribute Value
name Driver
use optional

IsReadOnly

Attribute Value
name IsReadOnly
type xs:boolean
default false

Content element details

DriverOption

Driver options to be passed to driver.

Attribute Value
name DriverOption
type DriverOptionType
minOccurs 0
maxOccurs unbounded

DataPackageType complexType

Declares a folder, named by the Name attribute, under PackageRoot which contains static data files to be consumed by the process at runtime. Service Fabric will recycle all EXEs and DLLHOSTs specified in the host and support packages when any of the data packages listed in the service manifest are upgraded.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name DataPackageType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="DataPackageType">
    <xs:annotation>
      <xs:documentation>Declares a folder, named by the Name attribute, under PackageRoot which contains static data files to be consumed by the process at runtime. Service Fabric will recycle all EXEs and DLLHOSTs specified in the host and support packages when any of the data packages listed in the service manifest are upgraded.</xs:documentation>
    </xs:annotation>
    <xs:attributeGroup ref="VersionedName"/>
  </xs:complexType>

DebugParametersType complexType

Specifies information on debugger to attach when activating codepackage.

Attribute Value
content 4 element(s), 10 attribute(s)
defined globally
name DebugParametersType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="DebugParametersType">
    <xs:annotation>
      <xs:documentation>Specifies information on debugger to attach when activating codepackage.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ContainerEntryPoint" type="xs:string" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Overridden entrypoint for containers so debugger can be launched.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContainerMountedVolume" type="xs:string" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Volumes to be mounted inside container.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContainerEnvironmentBlock" type="xs:string" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>EnvironmentBlock for containers.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ContainerLabel" type="xs:string" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Labels for containers in form key=value.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="ProgramExePath">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Arguments">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="EntryPointType" use="optional" default="Main">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Setup"/>
          <xs:enumeration value="Main"/>
          <xs:enumeration value="All"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="CodePackageLinkFolder">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="ConfigPackageLinkFolder">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="DataPackageLinkFolder">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="LockFile">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="WorkingFolder">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="DebugParametersFile">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="EnvironmentBlock">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

ProgramExePath

Attribute Value
name ProgramExePath

Arguments

Attribute Value
name Arguments

EntryPointType

Attribute Value
name EntryPointType
use optional
default Main

CodePackageLinkFolder

Attribute Value
name CodePackageLinkFolder

ConfigPackageLinkFolder

Attribute Value
name ConfigPackageLinkFolder

DataPackageLinkFolder

Attribute Value
name DataPackageLinkFolder

LockFile

Attribute Value
name LockFile

WorkingFolder

Attribute Value
name WorkingFolder

DebugParametersFile

Attribute Value
name DebugParametersFile

EnvironmentBlock

Attribute Value
name EnvironmentBlock

Content element details

ContainerEntryPoint

Overridden entrypoint for containers so debugger can be launched.

Attribute Value
name ContainerEntryPoint
type xs:string
minOccurs 0
maxOccurs unbounded

ContainerMountedVolume

Volumes to be mounted inside container.

Attribute Value
name ContainerMountedVolume
type xs:string
minOccurs 0
maxOccurs unbounded

ContainerEnvironmentBlock

EnvironmentBlock for containers.

Attribute Value
name ContainerEnvironmentBlock
type xs:string
minOccurs 0
maxOccurs unbounded

ContainerLabel

Labels for containers in form key=value.

Attribute Value
name ContainerLabel
type xs:string
minOccurs 0
maxOccurs unbounded

DefaultServicesType complexType

Declares service instances that are automatically created whenever an application is instantiated against this application type.

Attribute Value
content 2 element(s), 0 attribute(s)
defined globally
name DefaultServicesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="DefaultServicesType">
        <xs:annotation>
            <xs:documentation>Declares service instances that are automatically created whenever an application is instantiated against this application type.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="Service">
                    <xs:annotation>
                        <xs:documentation>Declares a service to be created automatically when the application is instantiated.</xs:documentation>
                    </xs:annotation>
                    <xs:complexType>
                        <xs:choice minOccurs="0">
                            <xs:element name="StatelessService" type="StatelessServiceType"/>
                            <xs:element name="StatefulService" type="StatefulServiceType"/>
                        </xs:choice>
                        <xs:attribute name="Name" type="xs:string" use="required">
                            <xs:annotation>
                                <xs:documentation>The service name, used to form the fully qualified application name URI. The fully qualified name URI of the service would be: fabric:/ApplicationName/ServiceName.</xs:documentation>
                            </xs:annotation>
                        </xs:attribute>
                        <xs:attribute name="GeneratedIdRef" type="xs:string" use="optional">
                            <xs:annotation>
                                <xs:documentation>Reference to the auto generated id used by Visual Studio tooling.</xs:documentation>
                            </xs:annotation>
                        </xs:attribute>
                        <xs:attribute name="ServiceDnsName" type="xs:string" use="optional">
                          <xs:annotation>
                            <xs:documentation>The DNS name of the service.</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                        <xs:attribute name="ServicePackageActivationMode" type="xs:string" use="optional" default="SharedProcess">
                          <xs:annotation>
                            <xs:documentation>ServicePackageActivationMode to be used when creating the service. Allowed values are 'SharedProcess' and 'ExclusiveProcess'. With SharedProcess mode, replica(s) or instance(s) from different partition(s) of service will share same activation of service package on a node. With ExclusiveProcess mode, each replica or instance of service will have its own dedicated activation of service package.</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                    </xs:complexType>
                </xs:element>
                <xs:element name="ServiceGroup">
                    <xs:annotation>
                        <xs:documentation>A collection of services that are automatically located together, so they are also moved together during fail-over or resource management.</xs:documentation>
                    </xs:annotation>
                    <xs:complexType>
                        <xs:choice minOccurs="0">
                            <xs:element name="StatelessServiceGroup" type="StatelessServiceGroupType"/>
                            <xs:element name="StatefulServiceGroup" type="StatefulServiceGroupType"/>
                        </xs:choice>
                        <xs:attribute name="Name" type="xs:string" use="required">
                            <xs:annotation>
                                <xs:documentation>Name of this service relative to this application Name URI. Fully qualified Name of the service is a combination of Name Uri of the Application and this Name.</xs:documentation>
                            </xs:annotation>
                        </xs:attribute>
                        <xs:attribute name="ServicePackageActivationMode" type="xs:string" use="optional" default="SharedProcess">
                          <xs:annotation>
                            <xs:documentation>ServicePackageActivationMode to be used when creating the service. Allowed values are 'SharedProcess' and 'ExclusiveProcess'. With SharedProcess mode, replica(s) or instance(s) from different partition(s) of service will share same activation of service package on a node. With ExclusiveProcess mode, each replica or instance of service will have its own dedicated activation of service package.</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                    </xs:complexType>
                </xs:element>
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

Content element details

Service

Declares a service to be created automatically when the application is instantiated.

Attribute Value
name Service

ServiceGroup

A collection of services that are automatically located together, so they are also moved together during fail-over or resource management.

Attribute Value
name ServiceGroup

DiagnosticsType complexType

Describes the diagnostic settings for applications.

Attribute Value
content 3 element(s), 0 attribute(s)
defined globally
name DiagnosticsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="DiagnosticsType">
    <xs:annotation>
      <xs:documentation>Describes the diagnostic settings for applications.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="CrashDumpSource" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specifies crash dump collection. Crash dumps are collected for executables that host the code packages of all services belonging to the application.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Destinations" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Destinations to which the crash dumps need to be transferred.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="LocalStore" type="LocalStoreType" minOccurs="0" maxOccurs="unbounded"/>
                  <xs:element name="FileStore" type="FileStoreType" minOccurs="0" maxOccurs="unbounded"/>
                  <xs:element name="AzureBlob" type="AzureBlobType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element ref="Parameters" minOccurs="0" maxOccurs="1"/>
          </xs:sequence>
          <xs:attribute name="IsEnabled" type="xs:string">
            <xs:annotation>
              <xs:documentation>Whether or not crash dump collection is enabled. By default, it is not enabled.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element name="ETWSource" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specifies ETW trace collection. ETW traces are collected for the providers that are registered by all services belonging to the application.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Destinations" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Destinations to which the crash dumps need to be transferred.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="LocalStore" type="LocalStoreETWType" minOccurs="0" maxOccurs="unbounded"/>
                  <xs:element name="FileStore" type="FileStoreETWType" minOccurs="0" maxOccurs="unbounded"/>
                  <xs:element name="AzureBlob" type="AzureBlobETWType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element ref="Parameters" minOccurs="0" maxOccurs="1"/>
          </xs:sequence>
          <xs:attribute name="IsEnabled" type="xs:string">
            <xs:annotation>
              <xs:documentation>Whether or not ETW trace collection is enabled. By default, it is not enabled.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element name="FolderSource" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Specifies the collection of the contents of a particular folder on the local node.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Destinations" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Destinations to which the folder contents need to be transferred.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="LocalStore" type="LocalStoreType" minOccurs="0" maxOccurs="unbounded"/>
                  <xs:element name="FileStore" type="FileStoreType" minOccurs="0" maxOccurs="unbounded"/>
                  <xs:element name="AzureBlob" type="AzureBlobType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element ref="Parameters" minOccurs="0" maxOccurs="1"/>
          </xs:sequence>
          <xs:attribute name="IsEnabled" type="xs:string">
            <xs:annotation>
              <xs:documentation>Whether or not collection of the contents of this folder is enabled. By default, it is not enabled.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attributeGroup ref="RelativeFolderPath"/>
          <xs:attributeGroup ref="DataDeletionAgeInDays"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

CrashDumpSource

Specifies crash dump collection. Crash dumps are collected for executables that host the code packages of all services belonging to the application.

Attribute Value
name CrashDumpSource
minOccurs 0

ETWSource

Specifies ETW trace collection. ETW traces are collected for the providers that are registered by all services belonging to the application.

Attribute Value
name ETWSource
minOccurs 0

FolderSource

Specifies the collection of the contents of a particular folder on the local node.

Attribute Value
name FolderSource
minOccurs 0
maxOccurs unbounded

DllHostEntryPointType complexType

Unsupported, do not use. DLL hosting support (assembly entry point) is provided through the FWP.exe process. Service Fabric starts the Fabric Worker Process (FWP.exe) and loads the assembly as part of the activation process.

Attribute Value
content 2 element(s), 1 attribute(s)
defined globally
name DllHostEntryPointType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="DllHostEntryPointType">
    <xs:annotation>
        <xs:documentation>Unsupported, do not use. DLL hosting support (assembly entry point) is provided through the FWP.exe process. Service Fabric starts the Fabric Worker Process (FWP.exe) and loads the assembly as part of the activation process.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="UnmanagedDll" type="UnmanagedDllType"/>
        <xs:element name="ManagedAssembly" type="ManagedAssemblyType"/>
      </xs:choice>
    </xs:sequence>
    <xs:attribute name="IsolationPolicy" use="optional" default="DedicatedProcess">
      <xs:annotation>
        <xs:documentation>Unsupported, do not use. Defines the isolation policy for the Unmanaged DLLs and Managed Assemblies loaded in the DllHost. </xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="SharedDomain"/>
          <xs:enumeration value="DedicatedDomain"/>
          <xs:enumeration value="DedicatedProcess"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

IsolationPolicy

Unsupported, do not use. Defines the isolation policy for the Unmanaged DLLs and Managed Assemblies loaded in the DllHost.

Attribute Value
name IsolationPolicy
use optional
default DedicatedProcess

Content element details

UnmanagedDll

Attribute Value
name UnmanagedDll
type UnmanagedDllType

ManagedAssembly

Attribute Value
name ManagedAssembly
type ManagedAssemblyType

DriverOptionType complexType

Driver options to be passed to driver. The Azure Files volume plugin supports the following driver options: shareName (the Azure Files file share that provides the volume for the container), storageAccountName (the Azure storage account that contains the Azure Files file share), storageAccountKey (Access key for the Azure storage account that contains the Azure Files file share). These three driver options are required.

Attribute Value
content 0 element(s), 4 attribute(s)
defined globally
name DriverOptionType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="DriverOptionType">
      <xs:annotation>
        <xs:documentation>Driver options to be passed to driver. The Azure Files volume plugin supports the following driver options:
          shareName (the Azure Files file share that provides the volume for the container), storageAccountName (the Azure storage account
          that contains the Azure Files file share), storageAccountKey (Access key for the Azure storage account that contains the Azure Files file share).
          These three driver options are required.</xs:documentation>
      </xs:annotation>
        <xs:attribute name="Name" type="xs:string" use="required">
          <xs:annotation>
            <xs:documentation>The name of the driver option. </xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="Value" type="xs:string" use="required">
          <xs:annotation>
            <xs:documentation>The value of the driver option. </xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <!-- TODO [dragosav] this needs to be deprecated; unclear if we can outright remove it, or give advance notice and remove it in an upcoming release. -->

        <xs:attribute name="IsEncrypted" type="xs:string" use="optional" default="false"/>
        <xs:attribute name="Type" type="xs:string" use="optional" default="PlainText">
          <xs:annotation>
            <xs:documentation>
              This value defines the protection of the value of the attribute. It may be SecretsStoreRef/Encrypted/PlainText.
              If set to SecretsStoreRef, the value references a secret stored encrypted in the cluster's SecureStore, which is de-referenced and decrypted upon activation.
              If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.
            </xs:documentation>
          </xs:annotation>
        </xs:attribute>
    </xs:complexType>

Attribute details

Name

The name of the driver option.

Attribute Value
name Name
type xs:string
use required

Value

The value of the driver option.

Attribute Value
name Value
type xs:string
use required

IsEncrypted

Attribute Value
name IsEncrypted
type xs:string
use optional
default false

Type

This value defines the protection of the value of the attribute. It may be SecretsStoreRef/Encrypted/PlainText. If set to SecretsStoreRef, the value references a secret stored encrypted in the cluster's SecureStore, which is de-referenced and decrypted upon activation. If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.

Attribute Value
name Type
type xs:string
use optional
default PlainText

EndpointBindingPolicyType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name EndpointBindingPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EndpointBindingPolicyType">
    <xs:attribute name="EndpointRef">
      <xs:annotation>
        <xs:documentation>The name of the endpoint, which must be declared in the Resources section of the service manifest.  When using HTTPS, do not use
          the same port and certificate for different service instances (independent of the application) deployed to the same node. Upgrading two different services
          using the same port in different application instances will result in an upgrade failure.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="CertificateRef" use="required">
      <xs:annotation>
        <xs:documentation>The name of the endpoint certificate, declared in the Certificates section, to return to the client. </xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

EndpointRef

The name of the endpoint, which must be declared in the Resources section of the service manifest. When using HTTPS, do not use the same port and certificate for different service instances (independent of the application) deployed to the same node. Upgrading two different services using the same port in different application instances will result in an upgrade failure.

Attribute Value
name EndpointRef

CertificateRef

The name of the endpoint certificate, declared in the Certificates section, to return to the client.

Attribute Value
name CertificateRef
use required

EndpointCertificateType complexType

Specifies information about an X509 certificate used to secure an endpoint.

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name EndpointCertificateType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EndpointCertificateType">
                <xs:annotation>
                        <xs:documentation>Specifies information about an X509 certificate used to secure an endpoint.</xs:documentation>
                </xs:annotation>
                <xs:attribute name="X509StoreName" type="xs:string" default="My">
                        <xs:annotation>
                                <xs:documentation>The store name for the X509 certificate.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="X509FindValue" use="required">
                        <xs:annotation>
                                <xs:documentation>The thumbprint of the X509 certificate.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Name" type="xs:string" use="optional"/>
        </xs:complexType>

Attribute details

X509StoreName

The store name for the X509 certificate.

Attribute Value
name X509StoreName
type xs:string
default My

X509FindValue

The thumbprint of the X509 certificate.

Attribute Value
name X509FindValue
use required

Name

Attribute Value
name Name
type xs:string
use optional

EndpointOverrideType complexType

Attribute Value
content 0 element(s), 6 attribute(s)
defined globally
name EndpointOverrideType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EndpointOverrideType">
    <xs:attribute name="Name" use="required">
      <xs:annotation>
      <xs:documentation>The name of the endpoint to override. A string.</xs:documentation>
    </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Port" type="xs:string">
      <xs:annotation>
        <xs:documentation>The port number for the endpoint. Overrides the value in the service manifest.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
     <xs:attribute name="Protocol" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>The protocol for the endpoint. Overrides the value in the service manifest. HTTPS endpoints must also have an EndpointCertificate and an EndpointBindingPolicy declared in the application manifest. The protocol cannot be changed later in an application upgrade. </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Type" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>The type of the endpoint. Overrides the value in the service manifest. Input endpoints are used to expose the port to the outside, internal endpoints are used for intra-application communication.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UriScheme" use="optional">
      <xs:annotation>
        <xs:documentation>The URI scheme. Overrides the value in the service manifest. For example, "http", "https", or "ftp".</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="PathSuffix" use="optional">
      <xs:annotation>
        <xs:documentation>The path suffix. For example, "/myapp1". Overrides the value in the service manifest.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

The name of the endpoint to override. A string.

Attribute Value
name Name
use required

Port

The port number for the endpoint. Overrides the value in the service manifest.

Attribute Value
name Port
type xs:string

Protocol

The protocol for the endpoint. Overrides the value in the service manifest. HTTPS endpoints must also have an EndpointCertificate and an EndpointBindingPolicy declared in the application manifest. The protocol cannot be changed later in an application upgrade.

Attribute Value
name Protocol
type xs:string
use optional

Type

The type of the endpoint. Overrides the value in the service manifest. Input endpoints are used to expose the port to the outside, internal endpoints are used for intra-application communication.

Attribute Value
name Type
type xs:string
use optional

UriScheme

The URI scheme. Overrides the value in the service manifest. For example, "http", "https", or "ftp".

Attribute Value
name UriScheme
use optional

PathSuffix

The path suffix. For example, "/myapp1". Overrides the value in the service manifest.

Attribute Value
name PathSuffix
use optional

EndpointType complexType

Defines an endpoint for the service. Specific ports can be requested. If a port is not explicitly specified, a port is assigned from the reserved application port range. Service replicas running on different cluster nodes can be assigned different port numbers, while replicas of the same service running on the same node share the same port. Such ports can be used by the service replicas for various purposes such as replication or listening for client requests.

Attribute Value
content 0 element(s), 8 attribute(s)
defined globally
name EndpointType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EndpointType">
    <xs:annotation>
      <xs:documentation>Defines an endpoint for the service. Specific ports can be requested.  If a port is not explicitly specified, a port is assigned from the reserved application port range. Service replicas running on different cluster nodes can be assigned different port numbers, while replicas of the same service running on the same node share the same port. Such ports can be used by the service replicas for various purposes such as replication or listening for client requests.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="Name" use="required">
      <xs:annotation>
      <xs:documentation>The name of the endpoint.</xs:documentation>
    </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Protocol" use="optional" default="tcp">
      <xs:annotation>
        <xs:documentation>The protocol for the endpoint: http, https, tcp, or udp. HTTPS endpoints must also have an EndpointCertificate and an EndpointBindingPolicy declared in the application manifest. The protocol cannot be changed later in an application upgrade. </xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="http"/>
          <xs:enumeration value="https"/>
          <xs:enumeration value="tcp"/>
          <xs:enumeration value="udp"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Type" use="optional" default="Internal">
      <xs:annotation>
        <xs:documentation>The type of the endpoint.  Input endpoints are used to expose the port to the outside, internal endpoints are used for intra-application communication.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Input"/>
          <xs:enumeration value="Internal"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="CodePackageRef" use="optional">
      <xs:annotation>
        <xs:documentation>The name of code Package that will use this endpoint.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="CertificateRef">
      <xs:annotation>
        <xs:documentation>Do not use, this attribute is not supported.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Port">
      <xs:annotation>
        <xs:documentation>The port will be replaced with a port determined by Azure Service Fabric after registering with Http.sys or BFE.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:int">
          <xs:minInclusive value="0"/>
          <xs:maxInclusive value="65535"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="UriScheme">
      <xs:annotation>
        <xs:documentation>The URI scheme.  For example, "http", "https", or "ftp".</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="PathSuffix">
      <xs:annotation>
        <xs:documentation>The path suffix.  For example, "/myapp1".</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

The name of the endpoint.

Attribute Value
name Name
use required

Protocol

The protocol for the endpoint: http, https, tcp, or udp. HTTPS endpoints must also have an EndpointCertificate and an EndpointBindingPolicy declared in the application manifest. The protocol cannot be changed later in an application upgrade.

Attribute Value
name Protocol
use optional
default tcp

Type

The type of the endpoint. Input endpoints are used to expose the port to the outside, internal endpoints are used for intra-application communication.

Attribute Value
name Type
use optional
default Internal

CodePackageRef

The name of code Package that will use this endpoint.

Attribute Value
name CodePackageRef
use optional

CertificateRef

Do not use, this attribute is not supported.

Attribute Value
name CertificateRef

Port

The port will be replaced with a port determined by Azure Service Fabric after registering with Http.sys or BFE.

Attribute Value
name Port

UriScheme

The URI scheme. For example, "http", "https", or "ftp".

Attribute Value
name UriScheme

PathSuffix

The path suffix. For example, "/myapp1".

Attribute Value
name PathSuffix

EntryPointDescriptionType complexType

The executable specified by EntryPoint is typically the long-running service host. The presence of a separate setup entry point avoids having to run the service host with high privileges for extended periods of time. The executable specified by EntryPoint is run after SetupEntryPoint exits successfully. The resulting process is monitored and restarted (beginning again with SetupEntryPoint) if it ever terminates or crashes.

Attribute Value
content 3 element(s), 0 attribute(s)
defined globally
name EntryPointDescriptionType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EntryPointDescriptionType">
    <xs:annotation>
      <xs:documentation>The executable specified by EntryPoint is typically the long-running service host. The presence of a separate setup entry point avoids having to run the service host with high privileges for extended periods of time. The executable specified by EntryPoint is run after SetupEntryPoint exits successfully. The resulting process is monitored and restarted (beginning again with SetupEntryPoint) if it ever terminates or crashes.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:choice>
        <xs:element name="ExeHost">
          <xs:complexType>
            <xs:complexContent>
              <xs:extension base="ExeHostEntryPointType">
                <xs:sequence>
                  <xs:element name="RunFrequency" minOccurs="0">
                    <xs:complexType>
                      <xs:attribute name="IntervalInSeconds" use="required">
                        <xs:simpleType>
                          <xs:restriction base="xs:int">
                            <xs:minInclusive value="0"/>
                            <xs:maxInclusive value="2147483647"/>
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:attribute>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:extension>
            </xs:complexContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="DllHost" type="DllHostEntryPointType"/>
        <xs:element name="ContainerHost" type="ContainerHostEntryPointType"/>
      </xs:choice>
    </xs:sequence>
  </xs:complexType>

Content element details

ExeHost

Attribute Value
name ExeHost

DllHost

Attribute Value
name DllHost
type DllHostEntryPointType

ContainerHost

Attribute Value
name ContainerHost
type ContainerHostEntryPointType

EnvironmentOverridesType complexType

Attribute Value
content 1 element(s), 1 attribute(s)
defined globally
name EnvironmentOverridesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EnvironmentOverridesType">
    <xs:sequence>
      <xs:element name="EnvironmentVariable" type="EnvironmentVariableOverrideType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Environment variable.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="CodePackageRef" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

CodePackageRef

Attribute Value
name CodePackageRef
use required

Content element details

EnvironmentVariable

Environment variable.

Attribute Value
name EnvironmentVariable
type EnvironmentVariableOverrideType
minOccurs 0
maxOccurs unbounded

EnvironmentType complexType

Attribute Value
content 3 element(s), 0 attribute(s)
defined globally
name EnvironmentType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EnvironmentType">
        <xs:sequence>
            <xs:element name="Principals" type="SecurityPrincipalsType"/>
            <xs:element name="Policies" type="ApplicationPoliciesType"/>
            <xs:element name="Diagnostics" type="DiagnosticsType"/>
        </xs:sequence>
        <xs:attributeGroup ref="VersionedItemAttrGroup"/>
    </xs:complexType>

Content element details

Principals

Attribute Value
name Principals
type SecurityPrincipalsType

Policies

Attribute Value
name Policies
type ApplicationPoliciesType

Diagnostics

Attribute Value
name Diagnostics
type DiagnosticsType

EnvironmentVariableOverrideType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name EnvironmentVariableOverrideType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EnvironmentVariableOverrideType">
    <xs:attribute name="Name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Name of environment variable.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Value">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="0"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Type" type="xs:string" use="optional"/>
  </xs:complexType>  

Attribute details

Name

Name of environment variable.

Attribute Value
name Name
type xs:string
use required

Value

Attribute Value
name Value

Type

Attribute Value
name Type
type xs:string
use optional

EnvironmentVariableType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name EnvironmentVariableType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EnvironmentVariableType">
    <xs:attribute name="Name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Name of environment variable.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Value">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="0"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Type" use="optional" default="PlainText">
      <xs:annotation>
        <xs:documentation>
          The type for the Environment Variable. It can be PlainText/Encrypted/SecretsStoreRef.
          If set to SecretsStoreRef, we retrieve  the reference value from the SecretStore.
          If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.
        </xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="PlainText"/>
          <xs:enumeration value="Encrypted"/>
          <xs:enumeration value="SecretsStoreRef"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

Name of environment variable.

Attribute Value
name Name
type xs:string
use required

Value

Attribute Value
name Value

Type

The type for the Environment Variable. It can be PlainText/Encrypted/SecretsStoreRef. If set to SecretsStoreRef, we retrieve the reference value from the SecretStore. If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.

Attribute Value
name Type
use optional
default PlainText

EnvironmentVariablesType complexType

Pass environment variables to your container or exe.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name EnvironmentVariablesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="EnvironmentVariablesType">
    <xs:annotation>
      <xs:documentation>Pass environment variables to your container or exe. </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="EnvironmentVariable" type="EnvironmentVariableType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Environment variable.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

EnvironmentVariable

Environment variable.

Attribute Value
name EnvironmentVariable
type EnvironmentVariableType
minOccurs 0
maxOccurs unbounded

ExeHostEntryPointType complexType

Attribute Value
content 4 element(s), 1 attribute(s)
defined globally
name ExeHostEntryPointType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ExeHostEntryPointType">

    <xs:sequence>
      <xs:element name="Program" type="xs:string">
        <xs:annotation>
          <xs:documentation>The executable name. For example, "MySetup.bat" or "MyServiceHost.exe".</xs:documentation>
        </xs:annotation></xs:element>
      <xs:element name="Arguments" type="xs:string" minOccurs="0"/>
      <xs:element name="WorkingFolder" default="Work" minOccurs="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="Work"/>
            <xs:enumeration value="CodePackage"/>
            <xs:enumeration value="CodeBase"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="ConsoleRedirection" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Warning! Do not use console redirection in a production application, only use it for local development and debugging. Redirects console output from the startup script to an output file in the application folder called "log" on the cluster node where the application is deployed and run.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="FileRetentionCount" default="2">
            <xs:annotation>
              <xs:documentation>Sets the number of console redirection output files to retain.  Must be a positive integer, the default value is "2".</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
              <xs:restriction base="xs:int">
                <xs:minInclusive value="1"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
          <xs:attribute name="FileMaxSizeInKb" default="20480">
            <xs:annotation>
              <xs:documentation>Set the maximum size of a console redirection output file.  Must be a positive integer greater than 128KB, the default value is "20480".</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
              <xs:restriction base="xs:int">
                <xs:minInclusive value="128"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="IsExternalExecutable" type="xs:boolean" default="false">
      <xs:annotation>
        <xs:documentation>True if the executable is external to the application package. Program existence check in the application package is skipped.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

IsExternalExecutable

True if the executable is external to the application package. Program existence check in the application package is skipped.

Attribute Value
name IsExternalExecutable
type xs:boolean
default false

Content element details

Program

The executable name. For example, "MySetup.bat" or "MyServiceHost.exe".

Attribute Value
name Program
type xs:string

Arguments

Attribute Value
name Arguments
type xs:string
minOccurs 0

WorkingFolder

Attribute Value
name WorkingFolder
default Work
minOccurs 0

ConsoleRedirection

Warning! Do not use console redirection in a production application, only use it for local development and debugging. Redirects console output from the startup script to an output file in the application folder called "log" on the cluster node where the application is deployed and run.

Attribute Value
name ConsoleRedirection
minOccurs 0

ExtensionsType complexType

Describes extensions that can be applied to other elements.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ExtensionsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ExtensionsType">
    <xs:annotation>
      <xs:documentation>Describes extensions that can be applied to other elements.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Extension" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:any namespace="##other" processContents="lax"/>
          </xs:sequence>
          <xs:attribute name="Name" use="required">
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:minLength value="1"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
          <xs:attribute name="GeneratedId" type="xs:string" use="optional"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

Extension

Attribute Value
name Extension
minOccurs 0
maxOccurs unbounded

FabricCertificateType complexType

This specifies the certificate information.

Attribute Value
content 0 element(s), 5 attribute(s)
defined globally
name FabricCertificateType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="FabricCertificateType">
                <xs:annotation>
                        <xs:documentation>This specifies the certificate information.</xs:documentation>
                </xs:annotation>
                <xs:attribute name="X509StoreName" type="xs:string" default="My">
                        <xs:annotation>
                                <xs:documentation>The store name for the X509 certificate.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="X509FindType" default="FindByThumbprint">
                        <xs:annotation>
                                <xs:documentation>This is Used only when credential is X509. This specifies how to find the certificate whether by the name or the thumbprint </xs:documentation>
                        </xs:annotation>
                        <xs:simpleType>
                                <xs:restriction base="xs:string">
                                        <xs:enumeration value="FindByThumbprint"/>
                                        <xs:enumeration value="FindBySubjectName"/>
                                        <xs:enumeration value="FindByExtension"/>
                                </xs:restriction>
                        </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="X509FindValue" use="required">
                        <xs:annotation>
                                <xs:documentation>This is Used only when credential is X509. This is the actual name or thumbprint of the certificate.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="X509FindValueSecondary" use="optional" default="">
                        <xs:annotation>
                                <xs:documentation>This is used only when credential is X509. This is the actual name or thumbprint of the certificate.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Name" type="xs:string" use="optional"/>
        </xs:complexType>

Attribute details

X509StoreName

The store name for the X509 certificate.

Attribute Value
name X509StoreName
type xs:string
default My

X509FindType

This is Used only when credential is X509. This specifies how to find the certificate whether by the name or the thumbprint

Attribute Value
name X509FindType
default FindByThumbprint

X509FindValue

This is Used only when credential is X509. This is the actual name or thumbprint of the certificate.

Attribute Value
name X509FindValue
use required

X509FindValueSecondary

This is used only when credential is X509. This is the actual name or thumbprint of the certificate.

Attribute Value
name X509FindValueSecondary
use optional
default

Name

Attribute Value
name Name
type xs:string
use optional

FabricEndpointsType complexType

Attribute Value
content 21 element(s), 0 attribute(s)
defined globally
name FabricEndpointsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="FabricEndpointsType">
    <xs:all>
      <xs:element name="ClientConnectionEndpoint" type="InputEndpointType"/>
      <xs:element name="LeaseDriverEndpoint" type="InternalEndpointType"/>
      <xs:element name="ClusterConnectionEndpoint" type="InternalEndpointType"/>
      <xs:element name="HttpGatewayEndpoint" type="InputEndpointType" minOccurs="0"/>
      <xs:element name="HttpApplicationGatewayEndpoint" type="InputEndpointType" minOccurs="0"/>
      <xs:element name="ServiceConnectionEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="ClusterManagerReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="RepairManagerReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="NamingReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="FailoverManagerReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="ImageStoreServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="UpgradeServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="FaultAnalysisServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="BackupRestoreServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="UpgradeOrchestrationServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="CentralSecretServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="EventStoreServiceReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="GatewayResourceManagerReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="DefaultReplicatorEndpoint" type="InternalEndpointType" minOccurs="0"/>
      <xs:element name="ApplicationEndpoints" minOccurs="0">
        <xs:complexType>
          <xs:attribute name="StartPort" type="xs:int" use="required"/>
          <xs:attribute name="EndPort" type="xs:int" use="required"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="EphemeralEndpoints" minOccurs="0">
        <xs:complexType>
          <xs:attribute name="StartPort" type="xs:int" use="required"/>
          <xs:attribute name="EndPort" type="xs:int" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:all>
  </xs:complexType>

Content element details

ClientConnectionEndpoint

Attribute Value
name ClientConnectionEndpoint
type InputEndpointType

LeaseDriverEndpoint

Attribute Value
name LeaseDriverEndpoint
type InternalEndpointType

ClusterConnectionEndpoint

Attribute Value
name ClusterConnectionEndpoint
type InternalEndpointType

HttpGatewayEndpoint

Attribute Value
name HttpGatewayEndpoint
type InputEndpointType
minOccurs 0

HttpApplicationGatewayEndpoint

Attribute Value
name HttpApplicationGatewayEndpoint
type InputEndpointType
minOccurs 0

ServiceConnectionEndpoint

Attribute Value
name ServiceConnectionEndpoint
type InternalEndpointType
minOccurs 0

ClusterManagerReplicatorEndpoint

Attribute Value
name ClusterManagerReplicatorEndpoint
type InternalEndpointType
minOccurs 0

RepairManagerReplicatorEndpoint

Attribute Value
name RepairManagerReplicatorEndpoint
type InternalEndpointType
minOccurs 0

NamingReplicatorEndpoint

Attribute Value
name NamingReplicatorEndpoint
type InternalEndpointType
minOccurs 0

FailoverManagerReplicatorEndpoint

Attribute Value
name FailoverManagerReplicatorEndpoint
type InternalEndpointType
minOccurs 0

ImageStoreServiceReplicatorEndpoint

Attribute Value
name ImageStoreServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

UpgradeServiceReplicatorEndpoint

Attribute Value
name UpgradeServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

FaultAnalysisServiceReplicatorEndpoint

Attribute Value
name FaultAnalysisServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

BackupRestoreServiceReplicatorEndpoint

Attribute Value
name BackupRestoreServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

UpgradeOrchestrationServiceReplicatorEndpoint

Attribute Value
name UpgradeOrchestrationServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

CentralSecretServiceReplicatorEndpoint

Attribute Value
name CentralSecretServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

EventStoreServiceReplicatorEndpoint

Attribute Value
name EventStoreServiceReplicatorEndpoint
type InternalEndpointType
minOccurs 0

GatewayResourceManagerReplicatorEndpoint

Attribute Value
name GatewayResourceManagerReplicatorEndpoint
type InternalEndpointType
minOccurs 0

DefaultReplicatorEndpoint

Attribute Value
name DefaultReplicatorEndpoint
type InternalEndpointType
minOccurs 0

ApplicationEndpoints

Attribute Value
name ApplicationEndpoints
minOccurs 0

EphemeralEndpoints

Attribute Value
name EphemeralEndpoints
minOccurs 0

FabricKtlLoggerSettingsType complexType

Attribute Value
content 3 element(s), 0 attribute(s)
defined globally
name FabricKtlLoggerSettingsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="FabricKtlLoggerSettingsType">
    <xs:all>
      <xs:element name="SharedLogFilePath" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Defines path to shared log.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="Value" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>

      <xs:element name="SharedLogFileId" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specific GUID to use as the shared log ID.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="Value" use="required">
            <xs:simpleType>
              <xs:restriction base="xs:string">
                <xs:pattern value="[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
         </xs:complexType>
      </xs:element>

      <xs:element name="SharedLogFileSizeInMB" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Defines how large is the shared log.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:attribute name="Value" use="required">
            <xs:simpleType>
              <xs:restriction base="xs:int">
                <xs:minInclusive value="512"/>
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:complexType>
      </xs:element>

    </xs:all>
  </xs:complexType>

Content element details

SharedLogFilePath

Defines path to shared log.

Attribute Value
name SharedLogFilePath
minOccurs 0

SharedLogFileId

Specific GUID to use as the shared log ID.

Attribute Value
name SharedLogFileId
minOccurs 0

SharedLogFileSizeInMB

Defines how large is the shared log.

Attribute Value
name SharedLogFileSizeInMB
minOccurs 0

FabricNodeType complexType

Describes an Azure Service Fabric Node.

Attribute Value
content 0 element(s), 6 attribute(s)
defined globally
name FabricNodeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="FabricNodeType">
                <xs:annotation>
                        <xs:documentation>Describes an Azure Service Fabric Node.</xs:documentation>
                </xs:annotation>
                <xs:attribute name="NodeName" type="xs:string" use="required">
                        <xs:annotation>
                                <xs:documentation>The name of the node instance.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="IPAddressOrFQDN" type="xs:string" use="required">
                        <xs:annotation>
                                <xs:documentation>The IP address or the FQDN of the machine on which to place this node.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="IsSeedNode" type="xs:boolean" default="false">
                        <xs:annotation>
                                <xs:documentation>A flag indicating whether or not this node is a seed node.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="NodeTypeRef" type="xs:string" use="required">
                        <xs:annotation>
                                <xs:documentation>Name of the nodetype defined in the NodeTypes section. </xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="FaultDomain" type="xs:anyURI" use="optional">
                        <xs:annotation>
                                <xs:documentation>The fault domain of this node.</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
                <xs:attribute name="UpgradeDomain" type="xs:anyURI" use="optional">
                        <xs:annotation>
                                <xs:documentation>The upgrade domain of this node.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

NodeName

The name of the node instance.

Attribute Value
name NodeName
type xs:string
use required

IPAddressOrFQDN

The IP address or the FQDN of the machine on which to place this node.

Attribute Value
name IPAddressOrFQDN
type xs:string
use required

IsSeedNode

A flag indicating whether or not this node is a seed node.

Attribute Value
name IsSeedNode
type xs:boolean
default false

NodeTypeRef

Name of the nodetype defined in the NodeTypes section.

Attribute Value
name NodeTypeRef
type xs:string
use required

FaultDomain

The fault domain of this node.

Attribute Value
name FaultDomain
type xs:anyURI
use optional

UpgradeDomain

The upgrade domain of this node.

Attribute Value
name UpgradeDomain
type xs:anyURI
use optional

FileStoreETWType complexType

Describes a file store destination for ETW events. Works only in on-premises environment.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name FileStoreETWType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="FileStoreETWType">
    <xs:annotation>
      <xs:documentation>Describes a file store destination for ETW events. Works only in on-premises environment.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="FileStoreType">
        <xs:attributeGroup ref="LevelFilter"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

FileStoreType complexType

Describes a file store destination for diagnostics data. Works only in a standalone cluster environment.

Attribute Value
content 1 element(s), 2 attribute(s)
defined globally
name FileStoreType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="FileStoreType">
    <xs:annotation>
      <xs:documentation>Describes a file store destination for diagnostics data. Works only in a standalone cluster environment.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="Parameters" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="IsEnabled"/>
    <xs:attributeGroup ref="Path"/>
    <xs:attributeGroup ref="UploadIntervalInMinutes"/>
    <xs:attributeGroup ref="DataDeletionAgeInDays"/>
    <xs:attribute name="AccountType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Specifies the type of account.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attributeGroup ref="AccountCredentialsGroup"/>
    <xs:attribute name="PasswordEncrypted" type="xs:string">
      <xs:annotation>
        <xs:documentation>Specifies if password is encrypted or plain text.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

AccountType

Specifies the type of account.

Attribute Value
name AccountType
type xs:string

PasswordEncrypted

Specifies if password is encrypted or plain text.

Attribute Value
name PasswordEncrypted
type xs:string

Content element details

None

Attribute Value
ref Parameters
minOccurs 0

ImageOverridesType complexType

Windows Server containers may not be compatible across different versions of the OS. You can specify multiple OS images per container and tag them with the build versions of the OS. Get the build version of the OS by running "winver" at a Windows command prompt. If the underlying OS is build version 16299 (Windows Server version 1709), Service Fabric picks the container image tagged with Os="16299". An untagged container image is assumed to work across all versions of the OS and overrides the image specified in the service manifest.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ImageOverridesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ImageOverridesType">
    <xs:annotation>
      <xs:documentation>Windows Server containers may not be compatible across different versions of the OS.  You can specify multiple OS images per container and tag
        them with the build versions of the OS. Get the build version of the OS by running "winver" at a Windows command prompt. If the underlying OS
        is build version 16299 (Windows Server version 1709), Service Fabric picks the container image tagged with Os="16299". An untagged container image
        is assumed to work across all versions of the OS and overrides the image specified in the service manifest.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Image" type="ImageType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Container image corresponding to OS build version number to be launched. If the Os attribute is not specified, the container image
            is assumed to work across all versions of the OS and overrides the image specified in the service manifest.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

Image

Container image corresponding to OS build version number to be launched. If the Os attribute is not specified, the container image is assumed to work across all versions of the OS and overrides the image specified in the service manifest.

Attribute Value
name Image
type ImageType
minOccurs 0
maxOccurs unbounded

ImageType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name ImageType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ImageType">
    <xs:attribute name="Name" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Name of container image.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Os" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>Build version of the OS. For example, the build version of Windows Server version 1709 is 16299.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

Name of container image.

Attribute Value
name Name
type xs:string
use required

Os

Build version of the OS. For example, the build version of Windows Server version 1709 is 16299.

Attribute Value
name Os
type xs:string
use optional

InfrastructureInformationType complexType

Contains the infrastructure information for this Azure Service Fabric cluster.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name InfrastructureInformationType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="InfrastructureInformationType">
    <xs:annotation>
      <xs:documentation>Contains the infrastructure information for this Azure Service Fabric cluster.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="NodeList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Node" type="InfrastructureNodeType" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

NodeList

Attribute Value
name NodeList

InfrastructureNodeType complexType

Describes an Infrastructure information needed.

Attribute Value
content 2 element(s), 7 attribute(s)
defined globally
name InfrastructureNodeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="InfrastructureNodeType">
    <xs:annotation>
      <xs:documentation>Describes an Infrastructure information needed.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Endpoints" type="FabricEndpointsType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Describe the endpoints associated with this node type</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="Certificates" type="CertificatesType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Describe the certificates associated with this node type</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="NodeName" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>The name of the node instance.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="IPAddressOrFQDN" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>The IP address or the FQDN of the machine on which to place this node.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="RoleOrTierName" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Name of the role which links to node type ref which is defined in the NodeTypes section.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="NodeTypeRef" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>Name of the node type which is defined in the NodeTypes section.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="IsSeedNode" type="xs:boolean" use="optional" default="false">
      <xs:annotation>
        <xs:documentation>Indicates whether the node is a seed node.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="FaultDomain" type="xs:anyURI" use="optional">
      <xs:annotation>
        <xs:documentation> The fault domain of this node. </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UpgradeDomain" type="xs:anyURI" use="optional">
      <xs:annotation>
        <xs:documentation>The upgrade domain of this node. </xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

NodeName

The name of the node instance.

Attribute Value
name NodeName
type xs:string
use required

IPAddressOrFQDN

The IP address or the FQDN of the machine on which to place this node.

Attribute Value
name IPAddressOrFQDN
type xs:string
use required

RoleOrTierName

Name of the role which links to node type ref which is defined in the NodeTypes section.

Attribute Value
name RoleOrTierName
type xs:string
use required

NodeTypeRef

Name of the node type which is defined in the NodeTypes section.

Attribute Value
name NodeTypeRef
type xs:string
use required

IsSeedNode

Indicates whether the node is a seed node.

Attribute Value
name IsSeedNode
type xs:boolean
use optional
default false

FaultDomain

The fault domain of this node.

Attribute Value
name FaultDomain
type xs:anyURI
use optional

UpgradeDomain

The upgrade domain of this node.

Attribute Value
name UpgradeDomain
type xs:anyURI
use optional

Content element details

Endpoints

Describe the endpoints associated with this node type

Attribute Value
name Endpoints
type FabricEndpointsType
minOccurs 0

Certificates

Describe the certificates associated with this node type

Attribute Value
name Certificates
type CertificatesType
minOccurs 0

InputEndpointType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name InputEndpointType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="InputEndpointType">
    <xs:attribute name="Port" type="xs:positiveInteger" use="required"/>
    <xs:attribute name="Protocol" use="optional" default="tcp">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="http"/>
          <xs:enumeration value="https"/>
          <xs:enumeration value="tcp"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Port

Attribute Value
name Port
type xs:positiveInteger
use required

Protocol

Attribute Value
name Protocol
use optional
default tcp

InternalEndpointType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name InternalEndpointType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="InternalEndpointType">
    <xs:attribute name="Port" type="xs:positiveInteger" use="required"/>
    <xs:attribute name="Protocol" use="optional" default="tcp">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="http"/>
          <xs:enumeration value="https"/>
          <xs:enumeration value="tcp"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Port

Attribute Value
name Port
type xs:positiveInteger
use required

Protocol

Attribute Value
name Protocol
use optional
default tcp

KeyValuePairType complexType

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name KeyValuePairType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="KeyValuePairType">
    <xs:attributeGroup ref="NameValuePair"/>
  </xs:complexType>

LinuxInfrastructureType complexType

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name LinuxInfrastructureType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="LinuxInfrastructureType">
    <xs:sequence>
      <xs:element name="NodeList">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Node" type="FabricNodeType" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

NodeList

Attribute Value
name NodeList

LoadMetricType complexType

A resource that this service should be balanced on, such as memory or CPU usage. Includes information about how much of that resource each replica or instance of this service consumes by default.

Attribute Value
content 0 element(s), 5 attribute(s)
defined globally
name LoadMetricType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="LoadMetricType">
    <xs:annotation>
        <xs:documentation>A resource that this service should be balanced on, such as memory or CPU usage.  Includes information about how much of that resource each replica or instance of this service consumes by default.</xs:documentation>
      </xs:annotation>
    <xs:attribute name="Name" use="required">
      <xs:annotation>
        <xs:documentation>A unique identifier for the metric within the cluster from the Cluster Resource Manager's perspective.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="DefaultLoad" type="xs:long" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>The default amount of load that this stateless service creates for this metric.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="PrimaryDefaultLoad" type="xs:long" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>The default amount of load that this service will exert for this metric when it's a primary replica.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="SecondaryDefaultLoad" type="xs:long" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>The default amount of load that this service will exert for this metric when it's a secondary replica.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Weight">
      <xs:annotation>
        <xs:documentation>Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight. Zero disables load balancing for this metric.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Zero"/>
          <xs:enumeration value="Low"/>
          <xs:enumeration value="Medium"/>
          <xs:enumeration value="High"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

A unique identifier for the metric within the cluster from the Cluster Resource Manager's perspective.

Attribute Value
name Name
use required

DefaultLoad

The default amount of load that this stateless service creates for this metric.

Attribute Value
name DefaultLoad
type xs:long
use optional
default 0

PrimaryDefaultLoad

The default amount of load that this service will exert for this metric when it's a primary replica.

Attribute Value
name PrimaryDefaultLoad
type xs:long
use optional
default 0

SecondaryDefaultLoad

The default amount of load that this service will exert for this metric when it's a secondary replica.

Attribute Value
name SecondaryDefaultLoad
type xs:long
use optional
default 0

Weight

Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight. Zero disables load balancing for this metric.

Attribute Value
name Weight

LocalStoreETWType complexType

Describes a store destination within the node for ETW events.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name LocalStoreETWType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="LocalStoreETWType">
    <xs:annotation>
      <xs:documentation>Describes a store destination within the node for ETW events.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="LocalStoreType">
        <xs:attributeGroup ref="LevelFilter"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

LocalStoreType complexType

Describes a store destination within the node for diagnostic data.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name LocalStoreType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="LocalStoreType">
    <xs:annotation>
      <xs:documentation>Describes a store destination within the node for diagnostic data.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element ref="Parameters" minOccurs="0"/>
    </xs:sequence>
    <xs:attributeGroup ref="IsEnabled"/>
    <xs:attributeGroup ref="RelativeFolderPath"/>
    <xs:attributeGroup ref="DataDeletionAgeInDays"/>
  </xs:complexType>

Content element details

None

Attribute Value
ref Parameters
minOccurs 0

LogicalDirectoryType complexType

Describes a LogicalDirectoryType.

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name LogicalDirectoryType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="LogicalDirectoryType">
    <xs:annotation>
      <xs:documentation>Describes a LogicalDirectoryType.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="LogicalDirectoryName" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>The name of the LogicalDirectory.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MappedTo" type="xs:string" use="required">
      <xs:annotation>
        <xs:documentation>The path of the LogicalDirectory.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Context" use="optional" default="application">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="application"/>
          <xs:enumeration value="node"/>
        </xs:restriction>
      </xs:simpleType>  
    </xs:attribute>
  </xs:complexType>

Attribute details

LogicalDirectoryName

The name of the LogicalDirectory.

Attribute Value
name LogicalDirectoryName
type xs:string
use required

MappedTo

The path of the LogicalDirectory.

Attribute Value
name MappedTo
type xs:string
use required

Context

Attribute Value
name Context
use optional
default application

ManagedAssemblyType complexType

Unsupported, do not use. The name of managed assembly (for example, Queue.dll), to host.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name ManagedAssemblyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ManagedAssemblyType">
    <xs:annotation>
        <xs:documentation>Unsupported, do not use. The name of managed assembly (for example, Queue.dll), to host.</xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="xs:string"/>
    </xs:simpleContent>
  </xs:complexType>

NetworkPoliciesType complexType

Describes network policies including container network policies for the service package.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name NetworkPoliciesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="NetworkPoliciesType">
    <xs:annotation>
      <xs:documentation>Describes network policies including container network policies for the service package.</xs:documentation>
    </xs:annotation>
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element name="ContainerNetworkPolicy" type="ContainerNetworkPolicyType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Describes container network policies for the service package.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:choice>
  </xs:complexType>

Content element details

ContainerNetworkPolicy

Describes container network policies for the service package.

Attribute Value
name ContainerNetworkPolicy
type ContainerNetworkPolicyType
minOccurs 0
maxOccurs unbounded

PaaSRoleType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name PaaSRoleType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="PaaSRoleType">
    <xs:attribute name="RoleName" type="xs:string" use="required"/>
    <xs:attribute name="NodeTypeRef" type="xs:string" use="required"/>
    <xs:attribute name="RoleNodeCount" type="xs:int" use="required"/>
  </xs:complexType>

Attribute details

RoleName

Attribute Value
name RoleName
type xs:string
use required

NodeTypeRef

Attribute Value
name NodeTypeRef
type xs:string
use required

RoleNodeCount

Attribute Value
name RoleNodeCount
type xs:int
use required

PaaSVoteType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name PaaSVoteType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="PaaSVoteType">
    <xs:attribute name="NodeName" use="required"/>
    <xs:attribute name="IPAddressOrFQDN" use="required"/>
    <xs:attribute name="Port" type="xs:int" use="required"/>
  </xs:complexType>

Attribute details

NodeName

Attribute Value
name NodeName
use required

IPAddressOrFQDN

Attribute Value
name IPAddressOrFQDN
use required

Port

Attribute Value
name Port
type xs:int
use required

PackageSharingPolicyType complexType

Indicates if a code, config or data package should be shared across service instances of the same service type.

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name PackageSharingPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="PackageSharingPolicyType">
    <xs:annotation>
      <xs:documentation>Indicates if a code, config or data package should be shared across service instances of the same service type.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="PackageRef">
      <xs:annotation>
        <xs:documentation>The name of the code, config, or data package to be shared. Must match the name of the package defined in the service manifest.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Scope" default="None">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="None"/>
          <xs:enumeration value="All"/>
          <xs:enumeration value="Code"/>
          <xs:enumeration value="Config"/>
          <xs:enumeration value="Data"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

PackageRef

The name of the code, config, or data package to be shared. Must match the name of the package defined in the service manifest.

Attribute Value
name PackageRef

Scope

Attribute Value
name Scope
default None

ParameterType complexType

Attribute Value
content 0 element(s), 1 attribute(s)
defined globally
name ParameterType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ParameterType">
                <xs:attributeGroup ref="NameValuePair"/>
                <xs:attribute name="IsEncrypted" type="xs:string">
                        <xs:annotation>
                                <xs:documentation>If true, the value of this parameter is encrypted</xs:documentation>
                        </xs:annotation>
                </xs:attribute>
        </xs:complexType>

Attribute details

IsEncrypted

If true, the value of this parameter is encrypted

Attribute Value
name IsEncrypted
type xs:string

ParametersType complexType

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ParametersType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ParametersType">
                <xs:sequence>
                        <xs:element name="Parameter" type="ParameterType" minOccurs="1" maxOccurs="unbounded"/>
                </xs:sequence>
        </xs:complexType>

Content element details

Parameter

Attribute Value
name Parameter
type ParameterType
minOccurs 1
maxOccurs unbounded

PortBindingType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name PortBindingType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="PortBindingType">
    <xs:attribute name="ContainerPort" type="xs:int" use="required">
      <xs:annotation>
        <xs:documentation>Container port number.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="EndpointRef">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

ContainerPort

Container port number.

Attribute Value
name ContainerPort
type xs:int
use required

EndpointRef

Attribute Value
name EndpointRef

RepositoryCredentialsType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name RepositoryCredentialsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="RepositoryCredentialsType">
    <xs:attributeGroup ref="AccountCredentialsGroup"/>
    <xs:attribute name="PasswordEncrypted" type="xs:boolean" use="optional">
      <xs:annotation>
        <xs:documentation>Specifies if password is encrypted or plain text. This attribute is deprecated. Please use the 'Type' attribute to indicate encrypted password.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Email">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Type" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>
          This value defines the type of password you have specified in the 'Password' Attribute. It can be SecretsStoreRef/Encrypted/PlainText.
          If set to SecretsStoreRef, we retrieve the reference value from the SecretStore.
          If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

PasswordEncrypted

Specifies if password is encrypted or plain text. This attribute is deprecated. Please use the 'Type' attribute to indicate encrypted password.

Attribute Value
name PasswordEncrypted
type xs:boolean
use optional

Email

Attribute Value
name Email

Type

This value defines the type of password you have specified in the 'Password' Attribute. It can be SecretsStoreRef/Encrypted/PlainText. If set to SecretsStoreRef, we retrieve the reference value from the SecretStore. If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.

Attribute Value
name Type
type xs:string
use optional

ResourceGovernancePolicyType complexType

Restricts the resources that can be used on the host and declares resource limits for a service code package.

Attribute Value
content 0 element(s), 12 attribute(s)
defined globally
name ResourceGovernancePolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ResourceGovernancePolicyType">
    <xs:annotation>
      <xs:documentation>Restricts the resources that can be used on the host and declares resource limits for a service code package.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="CodePackageRef" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="MemoryInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Memory limits in MB. Must be a positive integer. Code packages (containers or processes) are not able to allocate more memory than this limit, and attempting to do so results in an out-of-memory exception.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MemorySwapInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>The total amount of swap memory that can be used, in MB. Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MemoryReservationInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>The soft limit (in MB) for memory governance that is enforced only when memory contention is detected on the node. Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="CpuShares" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Relative CPU weight. Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="CpuPercent" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Usable percentage of available CPUs (Windows only). Must be a positive integer. If CPU limits are specified for the service package, this parameter is effectively ignored.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MaximumIOps" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Maximum IO rate (read and write) in terms of IOPS that can be used. Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MaximumIOBandwidth" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>The maximum IO (bytes per second) that can be used (read and write). Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="BlockIOWeight" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Block IO weight, relative to other code packages. Must be a positive integer between 10 and 1000.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="DiskQuotaInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Disk quota for containers.  Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="KernelMemoryInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Kernel memory limits in bytes.  Must be a positive integer.  Note this is Linux specific and docker on windows will error out if this is set.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ShmSizeInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Size of /dev/shm in bytes. If omitted, the system uses 64MB.  Must be a positive integer.  Note this is Linux specific, however, docker will NOT error out if specified.  It is simply ignored.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

CodePackageRef

Attribute Value
name CodePackageRef
use required

MemoryInMB

Memory limits in MB. Must be a positive integer. Code packages (containers or processes) are not able to allocate more memory than this limit, and attempting to do so results in an out-of-memory exception.

Attribute Value
name MemoryInMB
type xs:string
use optional
default 0

MemorySwapInMB

The total amount of swap memory that can be used, in MB. Must be a positive integer.

Attribute Value
name MemorySwapInMB
type xs:string
use optional
default 0

MemoryReservationInMB

The soft limit (in MB) for memory governance that is enforced only when memory contention is detected on the node. Must be a positive integer.

Attribute Value
name MemoryReservationInMB
type xs:string
use optional
default 0

CpuShares

Relative CPU weight. Must be a positive integer.

Attribute Value
name CpuShares
type xs:string
use optional
default 0

CpuPercent

Usable percentage of available CPUs (Windows only). Must be a positive integer. If CPU limits are specified for the service package, this parameter is effectively ignored.

Attribute Value
name CpuPercent
type xs:string
use optional
default 0

MaximumIOps

Maximum IO rate (read and write) in terms of IOPS that can be used. Must be a positive integer.

Attribute Value
name MaximumIOps
type xs:string
use optional
default 0

MaximumIOBandwidth

The maximum IO (bytes per second) that can be used (read and write). Must be a positive integer.

Attribute Value
name MaximumIOBandwidth
type xs:string
use optional
default 0

BlockIOWeight

Block IO weight, relative to other code packages. Must be a positive integer between 10 and 1000.

Attribute Value
name BlockIOWeight
type xs:string
use optional
default 0

DiskQuotaInMB

Disk quota for containers. Must be a positive integer.

Attribute Value
name DiskQuotaInMB
type xs:string
use optional
default 0

KernelMemoryInMB

Kernel memory limits in bytes. Must be a positive integer. Note this is Linux specific and docker on windows will error out if this is set.

Attribute Value
name KernelMemoryInMB
type xs:string
use optional
default 0

ShmSizeInMB

Size of /dev/shm in bytes. If omitted, the system uses 64MB. Must be a positive integer. Note this is Linux specific, however, docker will NOT error out if specified. It is simply ignored.

Attribute Value
name ShmSizeInMB
type xs:string
use optional
default 0

ResourceOverridesType complexType

Specifies resource overrides for endpoints declared in service manifest resources.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ResourceOverridesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ResourceOverridesType">
    <xs:annotation>
      <xs:documentation>Specifies resource overrides for endpoints declared in service manifest resources.</xs:documentation>
    </xs:annotation>
     <xs:sequence>
      <xs:element name="Endpoints" minOccurs="0">
        <xs:annotation>
          <xs:documentation>The service endpoint(s) to override.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Endpoint" type="EndpointOverrideType" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>The endpoint, declared in the service manifest, to override.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

Endpoints

The service endpoint(s) to override.

Attribute Value
name Endpoints
minOccurs 0

ResourcesType complexType

Describes the resources used by this service, which can be declared without modifying compiled code and changed when the service is deployed. Access to these resources is controlled through the Principals and Policies sections of the application manifest.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ResourcesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ResourcesType">
    <xs:annotation>
      <xs:documentation>Describes the resources used by this service, which can be declared without modifying compiled code and changed when the service is deployed. Access to these resources is controlled through the Principals and Policies sections of the application manifest.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Endpoints" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Defines endpoints for the service.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Endpoint" type="EndpointType" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

Endpoints

Defines endpoints for the service.

Attribute Value
name Endpoints
minOccurs 0

RunAsPolicyType complexType

Specifies the local user or local system account that a service code package will run as. Domain accounts are supported on Windows Server deployments where Microsoft Entra ID is available. By default, applications run under the account that the Fabric.exe process runs under. Applications can also run as other accounts, which must be declared in the Principals section. If you apply a RunAs policy to a service, and the service manifest declares endpoint resources with the HTTP protocol, you must also specify a SecurityAccessPolicy to ensure that ports allocated to these endpoints are correctly access-control listed for the RunAs user account that the service runs under. For an HTTPS endpoint, you also have to define a EndpointBindingPolicy to indicate the name of the certificate to return to the client.

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name RunAsPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="RunAsPolicyType">
    <xs:annotation>
      <xs:documentation>Specifies the local user or local system account that a service code package will run as. Domain accounts are supported on Windows Server deployments where Azure Active Directory is available. By default, applications run under the account that the Fabric.exe process runs under. Applications can also run as other accounts, which must be declared in the Principals section. If you apply a RunAs policy to a service, and the service manifest declares endpoint resources with the HTTP protocol, you must also specify a SecurityAccessPolicy to ensure that ports allocated to these endpoints are correctly access-control listed for the RunAs user account that the service runs under. For an HTTPS endpoint, you also have to define a EndpointBindingPolicy to indicate the name of the certificate to return to the client.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="CodePackageRef" use="required">
      <xs:annotation>
        <xs:documentation>The name of the code package. Must match the name of the CodePackage specified in the service manifest.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="UserRef" use="required">
      <xs:annotation>
        <xs:documentation>The user account that the service code package will run as.  The user account must be declared in the Principals section. Often it is preferable to run the setup entry point using a local system account rather than an administrators account.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="EntryPointType" use="optional" default="Main">
      <xs:annotation>
        <xs:documentation>Setup is the SetupEntryPoint declared in the service manifest, the privileged entry point that runs before any other entry point.  Main is the EntryPoint declared in the service manifest, typically the long-running service host. All is all entry points.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Setup"/>
          <xs:enumeration value="Main"/>
          <xs:enumeration value="All"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

CodePackageRef

The name of the code package. Must match the name of the CodePackage specified in the service manifest.

Attribute Value
name CodePackageRef
use required

UserRef

The user account that the service code package will run as. The user account must be declared in the Principals section. Often it is preferable to run the setup entry point using a local system account rather than an administrators account.

Attribute Value
name UserRef
use required

EntryPointType

Setup is the SetupEntryPoint declared in the service manifest, the privileged entry point that runs before any other entry point. Main is the EntryPoint declared in the service manifest, typically the long-running service host. All is all entry points.

Attribute Value
name EntryPointType
use optional
default Main

ScalingPolicyType complexType

A scaling policy description consisting of a trigger and a mechanism for scaling.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name ScalingPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ScalingPolicyType">
        <xs:annotation>
            <xs:documentation>A scaling policy description consisting of a trigger and a mechanism for scaling. </xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:group ref="ScalingPolicyTriggerGroup"/>
            <xs:group ref="ScalingPolicyMechanismGroup"/>
        </xs:sequence>
    </xs:complexType>

SecurityAccessPolicyType complexType

Grants access permissions to a principal on a resource (such as an endpoint) defined in a service manifest. Typically, it is very useful to control and restrict access of services to different resources in order to minimize security risks. This is especially important when the application is built from a collection of services from a marketplace which are developed by different developers.

Attribute Value
content 0 element(s), 4 attribute(s)
defined globally
name SecurityAccessPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SecurityAccessPolicyType">
    <xs:annotation>
      <xs:documentation>Grants access permissions to a principal on a resource (such as an endpoint) defined in a service manifest. Typically, it is very useful to control and restrict access of services to different resources in order to minimize security risks. This is especially important when the application is built from a collection of services from a marketplace which are developed by different developers.</xs:documentation>
    </xs:annotation>
    <xs:attribute name="ResourceRef" use="required">
      <xs:annotation>
        <xs:documentation>The resource being granted access to, declared and configured in the service manifest.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="PrincipalRef" use="required">
      <xs:annotation>
        <xs:documentation>The user or group being assigned access rights to a resource, must be declared in the Principals section.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="GrantRights" default="Read">
      <xs:annotation>
        <xs:documentation>The rights to grant: Read, Change, or Full. The default is Read.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Read"/>
          <xs:enumeration value="Change"/>
          <xs:enumeration value="Full"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="ResourceType" use="optional" default="Endpoint">
      <xs:annotation>
        <xs:documentation>The type of resource, defined in the Resources section of the service manifest. Either Endpoint or Certificate.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Endpoint"/>
          <xs:enumeration value="Certificate"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

ResourceRef

The resource being granted access to, declared and configured in the service manifest.

Attribute Value
name ResourceRef
use required

PrincipalRef

The user or group being assigned access rights to a resource, must be declared in the Principals section.

Attribute Value
name PrincipalRef
use required

GrantRights

The rights to grant: Read, Change, or Full. The default is Read.

Attribute Value
name GrantRights
default Read

ResourceType

The type of resource, defined in the Resources section of the service manifest. Either Endpoint or Certificate.

Attribute Value
name ResourceType
use optional
default Endpoint

SecurityOptionsType complexType

Attribute Value
content 0 element(s), 1 attribute(s)
defined globally
name SecurityOptionsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SecurityOptionsType">
    <xs:attribute name="Value" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

Value

Attribute Value
name Value
use required

SecurityPrincipalsType complexType

Describes the security principals (users, groups) required for this application to run services and secure resources. Principals are referenced in the policies sections.

Attribute Value
content 2 element(s), 0 attribute(s)
defined globally
name SecurityPrincipalsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SecurityPrincipalsType">
        <xs:annotation>
            <xs:documentation>Describes the security principals (users, groups) required for this application to run services and secure resources. Principals are referenced in the policies sections.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="Groups" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Declares a set of groups as security principals, which can be referenced in policies. Groups are useful if there are multiple users for different service entry points and they need to have certain common privileges that are available at the group level.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="Group" maxOccurs="unbounded">
                            <xs:annotation>
                                <xs:documentation>Declares a group as a security principal, which can be referenced in policies.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="NTLMAuthenticationPolicy" minOccurs="0">
                                        <xs:complexType>
                                            <xs:attribute name="IsEnabled" type="xs:boolean" use="optional" default="true"/>
                                        </xs:complexType>
                                    </xs:element>
                                    <xs:element name="Membership" minOccurs="0">
                                        <xs:complexType>
                                            <xs:choice maxOccurs="unbounded">
                                                <xs:element name="DomainGroup" minOccurs="0" maxOccurs="unbounded">
                                                    <xs:complexType>
                                                        <xs:attribute name="Name" type="xs:string" use="required"/>
                                                    </xs:complexType>
                                                </xs:element>
                                                <xs:element name="SystemGroup" minOccurs="0" maxOccurs="unbounded">
                                                    <xs:complexType>
                                                        <xs:attribute name="Name" type="xs:string" use="required"/>
                                                    </xs:complexType>
                                                </xs:element>
                                                <xs:element name="DomainUser" minOccurs="0" maxOccurs="unbounded">
                                                    <xs:complexType>
                                                        <xs:attribute name="Name" type="xs:string" use="required"/>
                                                    </xs:complexType>
                                                </xs:element>
                                            </xs:choice>
                                        </xs:complexType>
                                    </xs:element>
                                </xs:sequence>
                                <xs:attribute name="Name" type="xs:string" use="required">
                                    <xs:annotation>
                                        <xs:documentation>Name of the local group account. The name will be prefixed with the application ID.</xs:documentation>
                                    </xs:annotation>
                                </xs:attribute>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="Users" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Declares a set of users as security principals, which can be referenced in policies.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="User" maxOccurs="unbounded">
                            <xs:annotation>
                                <xs:documentation>Declares a user as a security principal, which can be referenced in policies.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="NTLMAuthenticationPolicy" minOccurs="0">
                                        <xs:complexType>
                                            <xs:attribute name="IsEnabled" type="xs:boolean" use="optional" default="true"/>
                                            <xs:attribute name="PasswordSecret" type="xs:string" use="required"/>
                                            <xs:attribute name="PasswordSecretEncrypted" type="xs:boolean" use="optional" default="false"/>
                                            <xs:attribute name="X509StoreLocation" use="optional" default="LocalMachine">
                                                <xs:simpleType>
                                                    <xs:restriction base="xs:string">
                                                        <xs:enumeration value="LocalMachine"/>
                                                        <xs:enumeration value="CurrentUser"/>
                                                    </xs:restriction>
                                                </xs:simpleType>
                                            </xs:attribute>
                                                                                        <xs:attribute name="X509StoreName" default="My">
                                                <xs:simpleType>
                                                    <xs:restriction base="xs:string"/>
                                                </xs:simpleType>
                                            </xs:attribute>
                                            <xs:attribute name="X509Thumbprint" type="xs:string"/>
                                        </xs:complexType>
                                    </xs:element>
                                    <xs:element name="MemberOf" minOccurs="0">
                                        <xs:annotation>
                                            <xs:documentation>Users can be added to any existing membership group, so it can inherit all the properties and security settings of that membership group. The membership group can be used to secure external resources that need to be accessed by different services or the same service (on a different machine).</xs:documentation>
                                                                                </xs:annotation>
                                                                                <xs:complexType>
                                                                                        <xs:choice maxOccurs="unbounded">
                                                                                                <xs:element name="SystemGroup" minOccurs="0" maxOccurs="unbounded">
                                                                                                        <xs:annotation>
                                                                                                                <xs:documentation>The system group to add the user to.  The system group must be defined in the Groups section.</xs:documentation>
                                                                                                        </xs:annotation>
                                                                                                        <xs:complexType>
                                                                                                                <xs:attribute name="Name" type="xs:string" use="required">
                                                                                                                        <xs:annotation>
                                                                                                                                <xs:documentation>The name of the system group.</xs:documentation>
                                                                                                                        </xs:annotation>
                                                                                                                </xs:attribute>
                                                                                                        </xs:complexType>
                                                                                                </xs:element>
                                                                                                <xs:element name="Group" minOccurs="0" maxOccurs="unbounded">
                                                                                                        <xs:annotation>
                                                                                                                <xs:documentation>The group to add the user to.  The group must be defined in the Groups section.</xs:documentation>
                                                                                                        </xs:annotation>
                                                                                                        <xs:complexType>
                                                                                                                <xs:attribute name="NameRef" type="xs:string" use="required">
                                                                                                                        <xs:annotation>
                                                                                                                                <xs:documentation>The name of the group.</xs:documentation>
                                                                                                                        </xs:annotation>
                                                                                                                </xs:attribute>
                                                                                                        </xs:complexType>
                                                                                                </xs:element>
                                                                                        </xs:choice>
                                                                                </xs:complexType>
                                                                        </xs:element>
                                                                </xs:sequence>
                                                                <xs:attribute name="Name" type="xs:string" use="required">
                                                                        <xs:annotation>
                                                                                <xs:documentation>Name of the user account.</xs:documentation>
                                                                        </xs:annotation>
                                                                </xs:attribute>
                                                                <xs:attribute name="AccountType" use="optional" default="LocalUser">
                                                                        <xs:annotation>
                                                                                <xs:documentation>Specifies the type of account: LocalUser, DomainUser, NetworkService, LocalService, ManagedServiceAccount, or LocalSystem.  The default is LocalUser. Local user accounts are created on the machines where the application is deployed. By default, these accounts do not have the same names as those specified here. Instead, they are dynamically generated and have random passwords. Supported local system account types are LocalUser, NetworkService, LocalService and LocalSystem. Domain accounts are supported on Windows Server deployments where Azure Active Directory is available.</xs:documentation>
                                                                        </xs:annotation>
                                                                        <xs:simpleType>
                                                                                <xs:restriction base="xs:string">
                                                                                        <xs:enumeration value="LocalUser"/>
                                                                                        <xs:enumeration value="DomainUser"/>
                                                                                        <xs:enumeration value="NetworkService"/>
                                                                                        <xs:enumeration value="LocalService"/>
                                                                                        <xs:enumeration value="ManagedServiceAccount"/>
                                                                                        <xs:enumeration value="LocalSystem"/>
                                                                                </xs:restriction>
                                                                        </xs:simpleType>
                                                                </xs:attribute>
                                                                <xs:attribute name="LoadUserProfile" type="xs:boolean" use="optional" default="false"/>
                                                                <xs:attribute name="PerformInteractiveLogon" type="xs:boolean" use="optional" default="false"/>
                                                                <xs:attributeGroup ref="AccountCredentialsGroup"/>
                                                                <xs:attribute name="PasswordEncrypted" type="xs:boolean" use="optional">
                                                                        <xs:annotation>
                                                                                <xs:documentation>True if the password is encrypted; false if in plain text.</xs:documentation>
                                                                        </xs:annotation>
                                                                </xs:attribute>
                                                        </xs:complexType>
                                                </xs:element>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                </xs:sequence>
        </xs:complexType>

Content element details

Groups

Declares a set of groups as security principals, which can be referenced in policies. Groups are useful if there are multiple users for different service entry points and they need to have certain common privileges that are available at the group level.

Attribute Value
name Groups
minOccurs 0

Users

Declares a set of users as security principals, which can be referenced in policies.

Attribute Value
name Users
minOccurs 0

ServiceAndServiceGroupTypesType complexType

Attribute Value
content 4 element(s), 0 attribute(s)
defined globally
name ServiceAndServiceGroupTypesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceAndServiceGroupTypesType">
    <xs:choice maxOccurs="unbounded">
      <xs:element name="StatefulServiceType" type="StatefulServiceTypeType"/>
      <xs:element name="StatelessServiceType" type="StatelessServiceTypeType"/>
      <xs:element name="StatefulServiceGroupType" type="StatefulServiceGroupTypeType"/>
      <xs:element name="StatelessServiceGroupType" type="StatelessServiceGroupTypeType"/>
    </xs:choice>
  </xs:complexType>

Content element details

StatefulServiceType

Attribute Value
name StatefulServiceType
type StatefulServiceTypeType

StatelessServiceType

Attribute Value
name StatelessServiceType
type StatelessServiceTypeType

StatefulServiceGroupType

Attribute Value
name StatefulServiceGroupType
type StatefulServiceGroupTypeType

StatelessServiceGroupType

Attribute Value
name StatelessServiceGroupType
type StatelessServiceGroupTypeType

ServiceDiagnosticsType complexType

Describes the diagnostic settings for the components of this service manifest.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ServiceDiagnosticsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceDiagnosticsType">
    <xs:annotation>
      <xs:documentation>Describes the diagnostic settings for the components of this service manifest.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ETW" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Describes the ETW settings for the components of this service manifest.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ProviderGuids" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Lists the ETW provider GUIDs for the components of this service manifest.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="ProviderGuid" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:attribute name="Value" use="required">
                        <xs:simpleType>
                          <xs:restriction base="xs:string">
                            <xs:pattern value="[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}"/>
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:attribute>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element name="ManifestDataPackages" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Lists the data packages containing ETW manifests for the components of this service manifest. The data package containing ETW manifests should not contain any other files. </xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="ManifestDataPackage" type="DataPackageType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

ETW

Describes the ETW settings for the components of this service manifest.

Attribute Value
name ETW
minOccurs 0

ServiceFabricRuntimeAccessPolicyType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name ServiceFabricRuntimeAccessPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceFabricRuntimeAccessPolicyType">
    <xs:attribute name="RemoveServiceFabricRuntimeAccess" type="xs:boolean" default="false">
      <xs:annotation>
        <xs:documentation>Indicates if Fabric Runtime specific information should be exposed to the Code packages in the Service package.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UseServiceFabricReplicatedStore" type="xs:boolean" default="false">
      <xs:annotation>
        <xs:documentation>Indicates if Service Fabric replicated blockstore should be used to provide volume for containers in service package.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

RemoveServiceFabricRuntimeAccess

Indicates if Fabric Runtime specific information should be exposed to the Code packages in the Service package.

Attribute Value
name RemoveServiceFabricRuntimeAccess
type xs:boolean
default false

UseServiceFabricReplicatedStore

Indicates if Service Fabric replicated blockstore should be used to provide volume for containers in service package.

Attribute Value
name UseServiceFabricReplicatedStore
type xs:boolean
default false

ServiceGroupMemberType complexType

Attribute Value
content 1 element(s), 2 attribute(s)
defined globally
name ServiceGroupMemberType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceGroupMemberType">
        <xs:sequence>
            <xs:element name="LoadMetrics" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Load metrics reported by this service.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="LoadMetric" type="LoadMetricType" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="ServiceTypeName" use="required">
            <xs:annotation>
                <xs:documentation>Type of the service group member.</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:minLength value="1"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="Name" use="required">
            <xs:annotation>
                <xs:documentation>Name of the service group member relative to the name of the service group.</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:minLength value="1"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>

Attribute details

ServiceTypeName

Type of the service group member.

Attribute Value
name ServiceTypeName
use required

Name

Name of the service group member relative to the name of the service group.

Attribute Value
name Name
use required

Content element details

LoadMetrics

Load metrics reported by this service.

Attribute Value
name LoadMetrics
minOccurs 0

ServiceGroupTypeType complexType

Base type that describes a stateful or a stateless ServiceGroupType.

Attribute Value
content 4 element(s), 2 attribute(s)
defined globally
name ServiceGroupTypeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceGroupTypeType">
    <xs:annotation>
      <xs:documentation>Base type that describes a stateful or a stateless ServiceGroupType.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LoadMetrics" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Load metrics reported by this service.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LoadMetric" type="LoadMetricType" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PlacementConstraints" type="xs:string" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Constraints for the placement of services that are part of this package.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServiceGroupMembers" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Member types of this service group type.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="ServiceGroupTypeMember" minOccurs="1" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element ref="Extensions" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="ServiceGroupTypeName" use="required">
      <xs:annotation>
        <xs:documentation>User-defined type identifier for a service group, For example, "ActorQueueSGType". This value is used in the ApplicationManifest.xml file to identify the service group.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="UseImplicitFactory" type="xs:boolean" use="optional">
      <xs:annotation>
        <xs:documentation>Specifies whether the service group instance is created by the implicit factory. If false (default), one of the code packages must register the service group factory</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

ServiceGroupTypeName

User-defined type identifier for a service group, For example, "ActorQueueSGType". This value is used in the ApplicationManifest.xml file to identify the service group.

Attribute Value
name ServiceGroupTypeName
use required

UseImplicitFactory

Specifies whether the service group instance is created by the implicit factory. If false (default), one of the code packages must register the service group factory

Attribute Value
name UseImplicitFactory
type xs:boolean
use optional

Content element details

LoadMetrics

Load metrics reported by this service.

Attribute Value
name LoadMetrics
minOccurs 0

PlacementConstraints

Constraints for the placement of services that are part of this package.

Attribute Value
name PlacementConstraints
type xs:string
minOccurs 0

ServiceGroupMembers

Member types of this service group type.

Attribute Value
name ServiceGroupMembers
minOccurs 0
maxOccurs 1

None

Attribute Value
ref Extensions
minOccurs 0

ServiceManifestImportPoliciesType complexType

Describes policies (end-point binding, package sharing, run-as, and security access) to be applied on the imported service manifest.

Attribute Value
content 11 element(s), 0 attribute(s)
defined globally
name ServiceManifestImportPoliciesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceManifestImportPoliciesType">
    <xs:annotation>
      <xs:documentation>Describes policies (end-point binding, package sharing, run-as, and security access) to be applied on the imported service manifest.</xs:documentation>
    </xs:annotation>
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element name="RunAsPolicy" type="RunAsPolicyType" minOccurs="0"/>
      <xs:element name="SecurityAccessPolicy" type="SecurityAccessPolicyType" minOccurs="0"/>
      <xs:element name="PackageSharingPolicy" type="PackageSharingPolicyType" minOccurs="0"/>
      <xs:element name="EndpointBindingPolicy" type="EndpointBindingPolicyType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specifies a certificate that should be returned to a client for an HTTPS endpoint.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServiceFabricRuntimeAccessPolicy" type="ServiceFabricRuntimeAccessPolicyType" minOccurs="0" maxOccurs="1">
      <xs:annotation>
        <xs:documentation>Specifies policies that determine how the service fabric runtime is exposed to the replicas.</xs:documentation>
      </xs:annotation>
      </xs:element>
      <xs:element name="ServicePackageResourceGovernancePolicy" type="ServicePackageResourceGovernancePolicyType" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Defines the resource governance policy that is applied at the level of the entire service package.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ResourceGovernancePolicy" type="ResourceGovernancePolicyType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specifies resource limits for a codepackage.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServicePackageContainerPolicy" type="ServicePackageContainerPolicyType" minOccurs="0" maxOccurs="1"/>
      <xs:element name="ContainerHostPolicies" type="ContainerHostPoliciesType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Specifies policies for activating container hosts.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ConfigPackagePolicies" type="ConfigPackagePoliciesType" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Config Packages to be mounted inside the container.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="NetworkPolicies" type="NetworkPoliciesType" minOccurs="0" maxOccurs="1">
        <xs:annotation>
          <xs:documentation>Specifies network policies including container network policies.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:choice>
  </xs:complexType>

Content element details

RunAsPolicy

Attribute Value
name RunAsPolicy
type RunAsPolicyType
minOccurs 0

SecurityAccessPolicy

Attribute Value
name SecurityAccessPolicy
type SecurityAccessPolicyType
minOccurs 0

PackageSharingPolicy

Attribute Value
name PackageSharingPolicy
type PackageSharingPolicyType
minOccurs 0

EndpointBindingPolicy

Specifies a certificate that should be returned to a client for an HTTPS endpoint.

Attribute Value
name EndpointBindingPolicy
type EndpointBindingPolicyType
minOccurs 0

ServiceFabricRuntimeAccessPolicy

Specifies policies that determine how the service fabric runtime is exposed to the replicas.

Attribute Value
name ServiceFabricRuntimeAccessPolicy
type ServiceFabricRuntimeAccessPolicyType
minOccurs 0
maxOccurs 1

ServicePackageResourceGovernancePolicy

Defines the resource governance policy that is applied at the level of the entire service package.

Attribute Value
name ServicePackageResourceGovernancePolicy
type ServicePackageResourceGovernancePolicyType
minOccurs 0
maxOccurs 1

ResourceGovernancePolicy

Specifies resource limits for a codepackage.

Attribute Value
name ResourceGovernancePolicy
type ResourceGovernancePolicyType
minOccurs 0

ServicePackageContainerPolicy

Attribute Value
name ServicePackageContainerPolicy
type ServicePackageContainerPolicyType
minOccurs 0
maxOccurs 1

ContainerHostPolicies

Specifies policies for activating container hosts.

Attribute Value
name ContainerHostPolicies
type ContainerHostPoliciesType
minOccurs 0

ConfigPackagePolicies

Config Packages to be mounted inside the container.

Attribute Value
name ConfigPackagePolicies
type ConfigPackagePoliciesType
minOccurs 0

NetworkPolicies

Specifies network policies including container network policies.

Attribute Value
name NetworkPolicies
type NetworkPoliciesType
minOccurs 0
maxOccurs 1

ServiceManifestRefType complexType

Imports the service manifest by reference. Currently the service manifest file (ServiceManifest.xml) must be present in the build package.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name ServiceManifestRefType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceManifestRefType">
    <xs:annotation>
      <xs:documentation>Imports the service manifest by reference. Currently the service manifest file (ServiceManifest.xml) must be present in the build package.</xs:documentation>
    </xs:annotation>
    <xs:attributeGroup ref="ServiceManifestIdentifier"/>
  </xs:complexType>

ServiceManifestType complexType

Declaratively describes the service type and version. It lists the independently upgradeable code, configuration, and data packages that together compose a service package to support one or more service types. Resources, diagnostics settings, and service metadata, such as service type, health properties, and load-balancing metrics, are also specified.

Attribute Value
content 7 element(s), 1 attribute(s)
defined globally
name ServiceManifestType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceManifestType">
    <xs:annotation>
      <xs:documentation>Declaratively describes the service type and version. It lists the independently upgradeable code, configuration, and data packages that together compose a service package to support one or more service types. Resources, diagnostics settings, and service metadata, such as service type, health properties, and load-balancing metrics, are also specified.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Description" type="xs:string" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Text describing this service.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServiceTypes" type="ServiceAndServiceGroupTypesType">
        <xs:annotation>
          <xs:documentation>Defines what service types are supported by a CodePackage in this manifest. When a service is instantiated against one of these service types, all code packages declared in this manifest are activated by running their entry points. Service types are declared at the manifest level and not the code package level.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="CodePackage" type="CodePackageType" maxOccurs="unbounded"/>
      <xs:element name="ConfigPackage" type="ConfigPackageType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="DataPackage" type="DataPackageType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="Resources" type="ResourcesType" minOccurs="0"/>
      <xs:element name="Diagnostics" type="ServiceDiagnosticsType" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="ManifestId" use="optional" default="" type="xs:string">
      <xs:annotation>
        <xs:documentation>The identifier of this service manifest, an unstructured string.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attributeGroup ref="VersionedName"/>
    <xs:anyAttribute processContents="skip"/> <!-- Allow unknown attributes to be used. -->

  </xs:complexType>

Attribute details

ManifestId

The identifier of this service manifest, an unstructured string.

Attribute Value
name ManifestId
use optional
default
type xs:string

Content element details

Description

Text describing this service.

Attribute Value
name Description
type xs:string
minOccurs 0

ServiceTypes

Defines what service types are supported by a CodePackage in this manifest. When a service is instantiated against one of these service types, all code packages declared in this manifest are activated by running their entry points. Service types are declared at the manifest level and not the code package level.

Attribute Value
name ServiceTypes
type ServiceAndServiceGroupTypesType

CodePackage

Attribute Value
name CodePackage
type CodePackageType
maxOccurs unbounded

ConfigPackage

Attribute Value
name ConfigPackage
type ConfigPackageType
minOccurs 0
maxOccurs unbounded

DataPackage

Attribute Value
name DataPackage
type DataPackageType
minOccurs 0
maxOccurs unbounded

Resources

Attribute Value
name Resources
type ResourcesType
minOccurs 0

Diagnostics

Attribute Value
name Diagnostics
type ServiceDiagnosticsType
minOccurs 0

ServicePackageContainerPolicyType complexType

Attribute Value
content 1 element(s), 2 attribute(s)
defined globally
name ServicePackageContainerPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServicePackageContainerPolicyType">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element name="PortBinding" type="PortBindingType" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>Specifies which endpoint resource to bind container exposed port.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:choice>
    <xs:attribute name="Hostname" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>Specify Hostname for container.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="Isolation" use="optional" type="xs:string">
      <xs:annotation>
        <xs:documentation>Isolation mode for container. Valid values are "default", "process" or "hyperv".</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

Hostname

Specify Hostname for container.

Attribute Value
name Hostname
use optional
type xs:string

Isolation

Isolation mode for container. Valid values are "default", "process" or "hyperv".

Attribute Value
name Isolation
use optional
type xs:string

Content element details

PortBinding

Specifies which endpoint resource to bind container exposed port.

Attribute Value
name PortBinding
type PortBindingType
minOccurs 0
maxOccurs unbounded

ServicePackageResourceGovernancePolicyType complexType

Attribute Value
content 0 element(s), 2 attribute(s)
defined globally
name ServicePackageResourceGovernancePolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServicePackageResourceGovernancePolicyType">
    <xs:attribute name="CpuCores" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>CPU limit in number of logical cores. Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MemoryInMB" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Memory limits in MB. Must be a positive integer.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

CpuCores

CPU limit in number of logical cores. Must be a positive integer.

Attribute Value
name CpuCores
type xs:string
use optional
default 0

MemoryInMB

Memory limits in MB. Must be a positive integer.

Attribute Value
name MemoryInMB
type xs:string
use optional
default 0

ServicePackageType complexType

ServicePackage represents a versioned unit of deployment and activation. The version of the ServicePackage is determined based on the manifest version and the version of the overrides.

Attribute Value
content 11 element(s), 4 attribute(s)
defined globally
name ServicePackageType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServicePackageType">
    <xs:annotation>
      <xs:documentation>ServicePackage represents a versioned unit of deployment and activation. The version of the ServicePackage is determined based on the manifest version and the version of the overrides.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Description" type="xs:string" minOccurs="0"/>
      <xs:element name="ServicePackageResourceGovernancePolicy" type="ServicePackageResourceGovernancePolicyType" minOccurs="0" maxOccurs="1"/>
      <xs:element name="ServicePackageContainerPolicy" type="ServicePackageContainerPolicyType" minOccurs="0" maxOccurs="1"/>
      <xs:element name="ServiceFabricRuntimeAccessPolicy" type="ServiceFabricRuntimeAccessPolicyType" minOccurs="0" maxOccurs="1"/>
      <xs:element name="DigestedServiceTypes">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ServiceTypes" type="ServiceTypesType"/>
          </xs:sequence>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="DigestedCodePackage" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CodePackage" type="CodePackageType"/>
            <xs:element name="RunAsPolicy" type="RunAsPolicyType" minOccurs="0" maxOccurs="2"/>
            <xs:element name="DebugParameters" type="DebugParametersType" minOccurs="0" maxOccurs="1"/>
            <xs:element name="ContainerHostPolicies" type="ContainerHostPoliciesType" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Specifies policies for activating container hosts.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="ResourceGovernancePolicy" type="ResourceGovernancePolicyType" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Specifies resource limits for codepackage.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element name="ConfigPackagePolicies" type="ConfigPackagePoliciesType" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Specifies config policies for mounts.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
          <xs:attribute name="ContentChecksum" type="xs:string"/>
          <xs:attribute name="IsShared" type="xs:boolean"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="DigestedConfigPackage" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ConfigPackage" type="ConfigPackageType"/>
            <xs:element name="ConfigOverride" type="ConfigOverrideType" minOccurs="0"/>
            <xs:element name="DebugParameters" type="DebugParametersType" minOccurs="0" maxOccurs="1"/>
          </xs:sequence>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
          <xs:attribute name="ContentChecksum" type="xs:string"/>
          <xs:attribute name="IsShared" type="xs:boolean"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="DigestedDataPackage" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="DataPackage" type="DataPackageType"/>
            <xs:element name="DebugParameters" type="DebugParametersType" minOccurs="0" maxOccurs="1"/>
          </xs:sequence>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
          <xs:attribute name="ContentChecksum" type="xs:string"/>
          <xs:attribute name="IsShared" type="xs:boolean"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="DigestedResources" minOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="DigestedEndpoints" minOccurs="0">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="DigestedEndpoint" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="Endpoint" type="EndpointType"/>
                        <xs:element name="SecurityAccessPolicy" type="SecurityAccessPolicyType" minOccurs="0"/>
                        <xs:element name="EndpointBindingPolicy" type="EndpointBindingPolicyType" minOccurs="0"/>
                        <xs:element name="ResourceGovernancePolicy" type="ResourceGovernancePolicyType" minOccurs="0" maxOccurs="1"/>
                      </xs:sequence>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element name="DigestedCertificates" minOccurs="0" maxOccurs="1">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="EndpointCertificate" type="EndpointCertificateType" minOccurs="0" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attributeGroup ref="VersionedItemAttrGroup"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="NetworkPolicies" type="NetworkPoliciesType" minOccurs="0" maxOccurs="1"/>
      <xs:element name="Diagnostics" type="ServiceDiagnosticsType"/>
    </xs:sequence>
    <xs:attribute name="Name" type="xs:string" use="required"/>
    <xs:attribute name="ManifestVersion" type="xs:string" use="required"/>
    <xs:attributeGroup ref="VersionedItemAttrGroup"/>
    <xs:attribute name="ManifestChecksum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Checksum value of the ServiceManifest file.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ContentChecksum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Checksum value of this ServicePackage content.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

Name

Attribute Value
name Name
type xs:string
use required

ManifestVersion

Attribute Value
name ManifestVersion
type xs:string
use required

ManifestChecksum

Checksum value of the ServiceManifest file.

Attribute Value
name ManifestChecksum
type xs:string

ContentChecksum

Checksum value of this ServicePackage content.

Attribute Value
name ContentChecksum
type xs:string

Content element details

Description

Attribute Value
name Description
type xs:string
minOccurs 0

ServicePackageResourceGovernancePolicy

Attribute Value
name ServicePackageResourceGovernancePolicy
type ServicePackageResourceGovernancePolicyType
minOccurs 0
maxOccurs 1

ServicePackageContainerPolicy

Attribute Value
name ServicePackageContainerPolicy
type ServicePackageContainerPolicyType
minOccurs 0
maxOccurs 1

ServiceFabricRuntimeAccessPolicy

Attribute Value
name ServiceFabricRuntimeAccessPolicy
type ServiceFabricRuntimeAccessPolicyType
minOccurs 0
maxOccurs 1

DigestedServiceTypes

Attribute Value
name DigestedServiceTypes

DigestedCodePackage

Attribute Value
name DigestedCodePackage
maxOccurs unbounded

DigestedConfigPackage

Attribute Value
name DigestedConfigPackage
minOccurs 0
maxOccurs unbounded

DigestedDataPackage

Attribute Value
name DigestedDataPackage
minOccurs 0
maxOccurs unbounded

DigestedResources

Attribute Value
name DigestedResources
minOccurs 1

NetworkPolicies

Attribute Value
name NetworkPolicies
type NetworkPoliciesType
minOccurs 0
maxOccurs 1

Diagnostics

Attribute Value
name Diagnostics
type ServiceDiagnosticsType

ServiceTemplatesType complexType

Attribute Value
content 4 element(s), 0 attribute(s)
defined globally
name ServiceTemplatesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceTemplatesType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="StatelessService" type="StatelessServiceType"/>
            <xs:element name="StatefulService" type="StatefulServiceType"/>
            <xs:element name="StatelessServiceGroup" type="StatelessServiceGroupType"/>
            <xs:element name="StatefulServiceGroup" type="StatefulServiceGroupType"/>
        </xs:choice>
    </xs:complexType>

Content element details

StatelessService

Attribute Value
name StatelessService
type StatelessServiceType

StatefulService

Attribute Value
name StatefulService
type StatefulServiceType

StatelessServiceGroup

Attribute Value
name StatelessServiceGroup
type StatelessServiceGroupType

StatefulServiceGroup

Attribute Value
name StatefulServiceGroup
type StatefulServiceGroupType

ServiceType complexType

Base type that defines an Azure Service Fabric service.

Attribute Value
content 5 element(s), 2 attribute(s)
defined globally
name ServiceType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceType">
        <xs:annotation>
            <xs:documentation>Base type that defines an Azure Service Fabric service.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:group ref="PartitionDescriptionGroup"/>
            <xs:element name="LoadMetrics" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Load metrics reported by this service, used for resource balancing services.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="LoadMetric" type="LoadMetricType" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="PlacementConstraints" type="xs:string" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Used to control which nodes in the cluster a service can run on. A key/value pair which describes the node property name and the service's requirements for the value. Individual statements can be grouped together with simple boolean logic to create the necessary constraint. For example, "(FirmwareVersion&gt;12  &amp;&amp; InDMZ == True)".</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="ServiceCorrelations" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Defines affinity relationships between services.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="ServiceCorrelation" maxOccurs="unbounded">
                            <xs:annotation>
                                <xs:documentation>Defines an affinity relationship with another service. Useful when splitting a previously-monolithic application into microservices.  One service has a local dependency on another service and both services need to run on the same node in order to work.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:attribute name="ServiceName" use="required">
                                    <xs:annotation>
                                        <xs:documentation>The name of the other service as a URI. Example, "fabric:/otherApplication/parentService".</xs:documentation>
                                    </xs:annotation>
                                    <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                            <xs:minLength value="1"/>
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:attribute>
                                <xs:attribute name="Scheme" use="required">
                                    <xs:annotation>
                                        <xs:documentation>In NonAlignedAffinity the replicas or instances of the different services are placed on the same nodes. AlignedAffinity is used with stateful services. Configuring one stateful service as having aligned affinity with another stateful service ensures that the primaries of those services are placed on the same nodes as each other, and that each pair of secondaries are also placed on the same nodes.</xs:documentation>
                                    </xs:annotation>
                                    <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                            <xs:enumeration value="Affinity"/>
                                            <xs:enumeration value="AlignedAffinity"/>
                                            <xs:enumeration value="NonAlignedAffinity"/>
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:attribute>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="ServicePlacementPolicies" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Declares placement policies for a service.  Useful when the cluster spans geographic distances or and/or geopolitical regions.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="ServicePlacementPolicy" maxOccurs="unbounded">
                            <xs:annotation>
                                <xs:documentation>Defines a service placement policy, which specifies that the service should or should not run in certain cluster fault domains.  Useful when the cluster spans geographic distances or and/or geopolitical regions.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:attribute name="DomainName">
                                    <xs:annotation>
                                        <xs:documentation>The fault domain where the service should or should not be placed, depending on the Type value.</xs:documentation>
                                    </xs:annotation>
                                    <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                            <xs:minLength value="1"/>
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:attribute>
                                <xs:attribute name="Type" use="required">
                                    <xs:annotation>
                                        <xs:documentation>InvalidDomain allows you to specify that a particular Fault Domain is invalid for this workload. RequiredDomain requires that all of the replicas be present in the specified domain. Multiple required domains can be specified. PreferredPrimaryDomain specifies the preferred Fault Domain for primary replicas. Useful in geographically spanned clusters where you are using other locations for redundancy, but would prefer that the primary replicas be placed in a certain location in order to provider lower latency for operations which go to the primary. RequiredDomainDistribution specifies that replicas are required to be distributed among the available fault domains. NonPartiallyPlace controls if the service replicas will be partially place if not all of them can be placed.</xs:documentation>
                                    </xs:annotation>
                                    <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                            <xs:enumeration value="InvalidDomain"/>
                                            <xs:enumeration value="RequiredDomain"/>
                                            <xs:enumeration value="PreferredPrimaryDomain"/>
                                            <xs:enumeration value="RequiredDomainDistribution"/>
                                            <xs:enumeration value="NonPartiallyPlace"/>
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:attribute>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="ServiceScalingPolicies" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>Declares scaling policies for a service. Useful for dynamically scaling the service based on needs. </xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="ScalingPolicy" type="ScalingPolicyType" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="TagsRequiredToPlace" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Declares tags required for placement of a service. </xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TagRequiredToPlace" type="xs:string" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
            <xs:element name="TagsRequiredToRun" minOccurs="0">
              <xs:annotation>
                <xs:documentation>Declares tags required for placement and running of a service. <xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="TagRequiredToRun" type="xs:string" maxOccurs="unbounded"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="ServiceTypeName" use="required">
            <xs:annotation>
                <xs:documentation>Name of the service type, declared in the service manifest, that will be instantiated.</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:minLength value="1"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="DefaultMoveCost">
            <xs:annotation>
                <xs:documentation>Specifies default move cost for this service.</xs:documentation>
            </xs:annotation>
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="Zero"/>
                    <xs:enumeration value="Low"/>
                    <xs:enumeration value="Medium"/>
                    <xs:enumeration value="High"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>

Attribute details

ServiceTypeName

Name of the service type, declared in the service manifest, that will be instantiated.

Attribute Value
name ServiceTypeName
use required

DefaultMoveCost

Specifies default move cost for this service.

Attribute Value
name DefaultMoveCost

Content element details

LoadMetrics

Load metrics reported by this service, used for resource balancing services.

Attribute Value
name LoadMetrics
minOccurs 0

PlacementConstraints

Used to control which nodes in the cluster a service can run on. A key/value pair which describes the node property name and the service's requirements for the value. Individual statements can be grouped together with simple boolean logic to create the necessary constraint. For example, "(FirmwareVersion>12 && InDMZ == True)".

Attribute Value
name PlacementConstraints
type xs:string
minOccurs 0

ServiceCorrelations

Defines affinity relationships between services.

Attribute Value
name ServiceCorrelations
minOccurs 0

ServicePlacementPolicies

Declares placement policies for a service. Useful when the cluster spans geographic distances or and/or geopolitical regions.

Attribute Value
name ServicePlacementPolicies
minOccurs 0

ServiceScalingPolicies

Declares scaling policies for a service. Useful for dynamically scaling the service based on needs.

Attribute Value
name ServiceScalingPolicies
minOccurs 0

TagsRequiredToPlace

Declares tags required for placement of a service. Useful for dynamically influencing service placement.

Attribute Value
name TagsRequiredToPlace
minOccurs 0

TagRequiredToRun

Declares tags required for placement and running of a service. Useful for dynamically influencing service placement and running.

Attribute Value
name TagRequiredToRun
minOccurs 0

ServiceTypeExtensionPolicyPropertiesType complexType

Defines Properties for the Persistence and Eviction policies.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name ServiceTypeExtensionPolicyPropertiesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceTypeExtensionPolicyPropertiesType">
    <xs:annotation>
      <xs:documentation>Defines Properties for the Persistence and Eviction policies.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Property" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:attribute name="Name" type="xs:string" use="required"/>
          <xs:attribute name="Value" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

Property

Attribute Value
name Property
minOccurs 0
maxOccurs unbounded

ServiceTypeHealthPolicyType complexType

Attribute Value
content 0 element(s), 3 attribute(s)
defined globally
name ServiceTypeHealthPolicyType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceTypeHealthPolicyType">    
    <xs:attribute name="MaxPercentUnhealthyServices" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Specifies the maximum tolerated percentage of unhealthy services before the application is considered unhealthy. Default percentage: 0.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MaxPercentUnhealthyPartitionsPerService" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Specifies the maximum tolerated percentage of unhealthy partitions before a service is considered unhealthy. Default percentage: 0.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MaxPercentUnhealthyReplicasPerPartition" type="xs:string" use="optional" default="0">
      <xs:annotation>
        <xs:documentation>Specifies the maximum tolerated percentage of unhealthy replicas before a partition is considered unhealthy. Default percentage: 0.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

MaxPercentUnhealthyServices

Specifies the maximum tolerated percentage of unhealthy services before the application is considered unhealthy. Default percentage: 0.

Attribute Value
name MaxPercentUnhealthyServices
type xs:string
use optional
default 0

MaxPercentUnhealthyPartitionsPerService

Specifies the maximum tolerated percentage of unhealthy partitions before a service is considered unhealthy. Default percentage: 0.

Attribute Value
name MaxPercentUnhealthyPartitionsPerService
type xs:string
use optional
default 0

MaxPercentUnhealthyReplicasPerPartition

Specifies the maximum tolerated percentage of unhealthy replicas before a partition is considered unhealthy. Default percentage: 0.

Attribute Value
name MaxPercentUnhealthyReplicasPerPartition
type xs:string
use optional
default 0

ServiceTypeType complexType

Base type that describes a stateful or a stateless ServiceType.

Attribute Value
content 4 element(s), 1 attribute(s)
defined globally
name ServiceTypeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceTypeType">
    <xs:annotation>
      <xs:documentation>Base type that describes a stateful or a stateless ServiceType.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LoadMetrics" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Load metrics reported by this service.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LoadMetric" type="LoadMetricType" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="PlacementConstraints" type="xs:string" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Used to control which nodes in the cluster a service can run on. A key/value pair which describes the node property name and the service's requirements for the value. Individual statements can be grouped together with simple boolean logic to create the necessary constraint. For example, "(FirmwareVersion&gt;12  &amp;&amp; InDMZ == True)".</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="ServicePlacementPolicies" minOccurs="0">
        <xs:annotation>
          <xs:documentation>Declares placement policies for a service.  Useful when the cluster spans geographic distances or and/or geopolitical regions.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ServicePlacementPolicy" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>Defines a service placement policy, which specifies that the service should or should not run in certain cluster fault domains.  Useful when the cluster spans geographic distances or and/or geopolitical regions.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:attribute name="DomainName">
                  <xs:annotation>
                    <xs:documentation>The fault domain where the service should or should not be placed, depending on the Type value.</xs:documentation>
                  </xs:annotation>
                  <xs:simpleType>
                    <xs:restriction base="xs:string">
                      <xs:minLength value="1"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="Type" use="required">
                  <xs:annotation>
                    <xs:documentation>InvalidDomain allows you to specify that a particular Fault Domain is invalid for this workload. RequiredDomain requires that all of the replicas be present in the specified domain. Multiple required domains can be specified. PreferredPrimaryDomain specifies the preferred Fault Domain for primary replicas. Useful in geographically spanned clusters where you are using other locations for redundancy, but would prefer that the primary replicas be placed in a certain location in order to provider lower latency for operations which go to the primary. RequiredDomainDistribution specifies that replicas are required to be distributed among the available fault domains. NonPartiallyPlace controls if the service replicas will be partially place if not all of them can be placed. </xs:documentation>
                  </xs:annotation>
                  <xs:simpleType>
                    <xs:restriction base="xs:string">
                      <xs:enumeration value="InvalidDomain"/>
                      <xs:enumeration value="RequiredDomain"/>
                      <xs:enumeration value="PreferredPrimaryDomain"/>
                      <xs:enumeration value="RequiredDomainDistribution"/>
                      <xs:enumeration value="NonPartiallyPlace"/>
                    </xs:restriction>
                  </xs:simpleType>
                </xs:attribute>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element ref="Extensions" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="ServiceTypeName" use="required">
      <xs:annotation>
        <xs:documentation>User-defined type identifier for a service. For example, "QueueType" or "CalculatorType". This value is used in the ApplicationManifest.xml file to identify the service.</xs:documentation>
      </xs:annotation>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>

Attribute details

ServiceTypeName

User-defined type identifier for a service. For example, "QueueType" or "CalculatorType". This value is used in the ApplicationManifest.xml file to identify the service.

Attribute Value
name ServiceTypeName
use required

Content element details

LoadMetrics

Load metrics reported by this service.

Attribute Value
name LoadMetrics
minOccurs 0

PlacementConstraints

Used to control which nodes in the cluster a service can run on. A key/value pair which describes the node property name and the service's requirements for the value. Individual statements can be grouped together with simple boolean logic to create the necessary constraint. For example, "(FirmwareVersion>12 && InDMZ == True)".

Attribute Value
name PlacementConstraints
type xs:string
minOccurs 0

ServicePlacementPolicies

Declares placement policies for a service. Useful when the cluster spans geographic distances or and/or geopolitical regions.

Attribute Value
name ServicePlacementPolicies
minOccurs 0

None

Attribute Value
ref Extensions
minOccurs 0

ServiceTypesType complexType

Attribute Value
content 2 element(s), 0 attribute(s)
defined globally
name ServiceTypesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ServiceTypesType">
    <xs:choice maxOccurs="unbounded">
      <xs:element name="StatefulServiceType" type="StatefulServiceTypeType">
        <xs:annotation>
          <xs:documentation>Describes a stateful ServiceType.</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:element name="StatelessServiceType" type="StatelessServiceTypeType">
        <xs:annotation>
          <xs:documentation>Describes a stateless ServiceType.</xs:documentation>
        </xs:annotation>
      </xs:element>
    </xs:choice>
  </xs:complexType>

Content element details

StatefulServiceType

Describes a stateful ServiceType.

Attribute Value
name StatefulServiceType
type StatefulServiceTypeType

StatelessServiceType

Describes a stateless ServiceType.

Attribute Value
name StatelessServiceType
type StatelessServiceTypeType

SettingsOverridesType complexType

Declares configuration settings in a service manifest to be overridden. It consists of one or more sections of key-value pairs. Parameter values can be encrypted using the Invoke-ServiceFabricEncryptSecret cmdlet.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name SettingsOverridesType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SettingsOverridesType">
    <xs:annotation>
      <xs:documentation>Declares configuration settings in a service manifest to be overridden. It consists of one or more sections of key-value pairs. Parameter values can be encrypted using the Invoke-ServiceFabricEncryptSecret cmdlet.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Section" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>A section in the Settings.xml file to override.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded">
              <xs:annotation>
                <xs:documentation>The setting to override.</xs:documentation>
              </xs:annotation>
              <xs:complexType>
                <xs:attributeGroup ref="NameValuePair"/>
                <xs:attribute name="IsEncrypted" type="xs:boolean" default="false">
                  <xs:annotation>
                    <xs:documentation>
                      If true, the value of this parameter is encrypted. The application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information. The certificate information that will be used to encrypt the value is specified in the Certificates section. This attribute is deprecated. Please use Type attribute.
                    </xs:documentation>
                                    </xs:annotation>
                                </xs:attribute>
                <xs:attribute name="Type" type="xs:string" use="optional">
                  <xs:annotation>
                    <xs:documentation>
                      This value defines the type of value you have specified in the 'Value' Attribute. It can be SecretsStoreRef/Encrypted/PlainText.
                      If set to SecretsStoreRef, we retrieve  the reference value from the SecretStore.
                      If set to Encrypted, the application developer is responsible for creating a certificate and using the Invoke-ServiceFabricEncryptSecret cmdlet to encrypt sensitive information.
                    </xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                    <xs:attribute name="Name" use="required">
                        <xs:annotation>
                            <xs:documentation>The name of the section in the Settings.xml file to override.</xs:documentation>
                        </xs:annotation>
                        <xs:simpleType>
                            <xs:restriction base="xs:string">
                                <xs:minLength value="1"/>
                            </xs:restriction>
                        </xs:simpleType>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

Content element details

Section

A section in the Settings.xml file to override.

Attribute Value
name Section
maxOccurs unbounded

SettingsType complexType

Describes user-defined settings for a ServiceComponent or an Application. It consists of one or more sections of key-value pairs.

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name SettingsType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SettingsType">
    <xs:annotation>
      <xs:documentation>Describes user-defined settings for a ServiceComponent or an Application. It consists of one or more sections of key-value pairs.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="Section" minOccurs="0" maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>A user-defined named section.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded">
              <xs:complexType>
                <xs:attribute name="Name" type="xs:string" use="required"/>
                <xs:attribute name="Value" type="xs:string" use="required"/>
                <xs:attribute name="MustOverride" type="xs:boolean" default="false">
                  <xs:annotation>
                    <xs:documentation>If true, the value of this parameter must be overridden by higher level configuration.</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="IsEncrypted" type="xs:boolean" default="false">
                  <xs:annotation>
                    <xs:documentation>If true, the value of this parameter is encrypted.</xs:documentation>
                  </xs:annotation>
                </xs:attribute>
                <xs:attribute name="Type" type="xs:string" use="optional"/>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="Name" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
  </xs:complexType>

Content element details

Section

A user-defined named section.

Attribute Value
name Section
minOccurs 0
maxOccurs unbounded

StatefulServiceGroupType complexType

Defines a stateful service group.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatefulServiceGroupType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatefulServiceGroupType">
        <xs:annotation>
            <xs:documentation>Defines a stateful service group.</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="StatefulServiceType">
                <xs:sequence>
                    <xs:element name="Members" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation>Member services of this service group</xs:documentation>
                        </xs:annotation>
                        <xs:complexType>
                            <xs:sequence>
                                <xs:element name="Member" type="ServiceGroupMemberType" minOccurs="1" maxOccurs="unbounded"/>
                            </xs:sequence>
                        </xs:complexType>
                    </xs:element>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

StatefulServiceGroupTypeType complexType

Describes a stateful service group type.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatefulServiceGroupTypeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatefulServiceGroupTypeType">
    <xs:annotation>
      <xs:documentation>Describes a stateful service group type.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ServiceGroupTypeType">
        <xs:attribute name="HasPersistedState" type="xs:boolean" default="false">
          <xs:annotation>
            <xs:documentation>True if the service group has state that needs to be persisted.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

StatefulServiceType complexType

Defines a stateful service.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatefulServiceType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatefulServiceType">
        <xs:annotation>
            <xs:documentation>Defines a stateful service.</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="ServiceType">
                <xs:attribute name="TargetReplicaSetSize" type="xs:string" default="1">
                    <xs:annotation>
                        <xs:documentation>Desired replica set size for the partitions of this stateful service. Must be a positive integer. This is a target size; a replica set is still functional with less members. The quorum is a majority based quorum.</xs:documentation>
                    </xs:annotation>
                </xs:attribute>
                <xs:attribute name="MinReplicaSetSize" type="xs:string" default="1">
                    <xs:annotation>
                        <xs:documentation>Minimum number of replicas required in the replica set to allow writes.  Must be positive integer less than TargetReplicaSetSize. </xs:documentation>
                    </xs:annotation>
                </xs:attribute>
                <xs:attribute name="ReplicaRestartWaitDurationSeconds" type="xs:string" use="optional" default="">
                    <xs:annotation>
                        <xs:documentation>The duration between when a replica goes down and when a new replica is created. When a persistent replica goes down, this timer starts.  When it expires Service Fabric will create a new replica on any node in the cluster.</xs:documentation>
                    </xs:annotation>
                </xs:attribute>
                <xs:attribute name="QuorumLossWaitDurationSeconds" type="xs:string" use="optional" default="">
                    <xs:annotation>
                        <xs:documentation>The maximum duration for which a partition is allowed to be in a state of quorum loss. If the partition is still in quorum loss after this duration, the partition is recovered from quorum loss by considering the down replicas as lost. Note that this can potentially incur data loss.</xs:documentation>
                    </xs:annotation>
                </xs:attribute>
                <xs:attribute name="StandByReplicaKeepDurationSeconds" type="xs:string" use="optional" default="">
                    <xs:annotation>
                        <xs:documentation>How long StandBy replicas should be maintained before being removed. Sometimes a replica will be down for longer than the ReplicaRestartWaitDuration. In these cases a new replica will be built to replace it. Sometimes however the loss is not permanent and the persistent replica is eventually recovered. This now constitutes a StandBy replica.</xs:documentation>
                    </xs:annotation>
                </xs:attribute>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

StatefulServiceTypeType complexType

Describes a stateful service type.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatefulServiceTypeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatefulServiceTypeType">
    <xs:annotation>
      <xs:documentation>Describes a stateful service type.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ServiceTypeType">
        <xs:attribute name="HasPersistedState" type="xs:boolean" default="false">
          <xs:annotation>
            <xs:documentation>True if the service has state that needs to be persisted on the local disk.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute name="UseImplicitHost" type="xs:boolean" default="false">
          <xs:annotation>
            <xs:documentation>Specifies if the service type should be implemented implicitly as a guest executable. Guest executables are used for hosting any type of applications (such as Node.js or Java) or legacy applications that do not implement the Service Fabric service interfaces.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

StatelessServiceGroupType complexType

Defines a stateless service group.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatelessServiceGroupType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatelessServiceGroupType">
        <xs:annotation>
            <xs:documentation>Defines a stateless service group.</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="StatelessServiceType">
                <xs:sequence>
                    <xs:element name="Members" minOccurs="1" maxOccurs="1">
                        <xs:annotation>
                            <xs:documentation>Member services of this service group</xs:documentation>
                        </xs:annotation>
                        <xs:complexType>
                            <xs:sequence>
                                <xs:element name="Member" type="ServiceGroupMemberType" minOccurs="1" maxOccurs="unbounded"/>
                            </xs:sequence>
                        </xs:complexType>
                    </xs:element>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

StatelessServiceGroupTypeType complexType

Describes a stateless service group type.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatelessServiceGroupTypeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatelessServiceGroupTypeType">
    <xs:annotation>
      <xs:documentation>Describes a stateless service group type.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ServiceGroupTypeType"/>
    </xs:complexContent>
  </xs:complexType>

StatelessServiceType complexType

Defines a stateless service.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatelessServiceType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatelessServiceType">
        <xs:annotation>
            <xs:documentation>Defines a stateless service.</xs:documentation>
        </xs:annotation>
        <xs:complexContent>
            <xs:extension base="ServiceType">
                <xs:attribute name="InstanceCount" type="xs:string" default="1">
                    <xs:annotation>
                        <xs:documentation>Number of instances required for this stateless service (positive integer).</xs:documentation>
                    </xs:annotation>
                </xs:attribute>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

StatelessServiceTypeType complexType

Describes a stateless service type.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name StatelessServiceTypeType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="StatelessServiceTypeType">
    <xs:annotation>
      <xs:documentation>Describes a stateless service type.</xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ServiceTypeType">
        <xs:attribute name="UseImplicitHost" type="xs:boolean" default="false">
          <xs:annotation>
            <xs:documentation>Specifies if the service type should be implemented implicitly as a guest executable. Guest executables are used for hosting any type of applications (such as Node.js or Java) or legacy applications that do not implement the Service Fabric service interfaces.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

TargetInformationType complexType

Attribute Value
content 2 element(s), 0 attribute(s)
defined globally
name TargetInformationType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="TargetInformationType">
    <xs:all>
      <xs:element name="CurrentInstallation" type="WindowsFabricDeploymentInformation" minOccurs="0"/>
      <xs:element name="TargetInstallation" type="WindowsFabricDeploymentInformation" minOccurs="1"/>
    </xs:all>
  </xs:complexType>

Content element details

CurrentInstallation

Attribute Value
name CurrentInstallation
type WindowsFabricDeploymentInformation
minOccurs 0

TargetInstallation

Attribute Value
name TargetInstallation
type WindowsFabricDeploymentInformation
minOccurs 1

UnmanagedDllType complexType

Unsupported, do not use. The name of unmanaged assembly (for example, Queue.dll), to host.

Attribute Value
content 0 element(s), 0 attribute(s)
defined globally
name UnmanagedDllType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="UnmanagedDllType">
    <xs:annotation>
        <xs:documentation>Unsupported, do not use. The name of unmanaged assembly (for example, Queue.dll), to host.</xs:documentation>
    </xs:annotation>
    <xs:simpleContent>
      <xs:extension base="xs:string"/>
    </xs:simpleContent>
  </xs:complexType>

WindowsFabricDeploymentInformation complexType

Attribute Value
content 0 element(s), 11 attribute(s)
defined globally
name WindowsFabricDeploymentInformation

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="WindowsFabricDeploymentInformation">
    <xs:attribute name="InstanceId" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>This is the target instance of the node.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="MSILocation" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>This is the full path to the MSI location.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ClusterManifestLocation" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>This is the full path to the Cluster Manifest Location.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="InfrastructureManifestLocation" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>This location of the infrastructure manifest that is internally generated.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="TargetVersion" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>This is the Target Version of the deployment.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="NodeName" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>This is the name of the Node to which the Fabric Upgrade is to happen</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="RemoveNodeState" type="xs:boolean" use="optional" default="false">
        <xs:annotation>
            <xs:documentation>A flag indicating if RemoveNodeState Api should be called after removing node configuration.</xs:documentation>
        </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UpgradeEntryPointExe" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>Name of the exe used by the installer service to upgrade </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UpgradeEntryPointExeParameters" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>Parameters to the Setup Entry point exe</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UndoUpgradeEntryPointExe" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>Name of the exe used by the installer service to undo the upgrade</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="UndoUpgradeEntryPointExeParameters" type="xs:string" use="optional">
      <xs:annotation>
        <xs:documentation>Parameters to the Setup Entry point exe</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>

Attribute details

InstanceId

This is the target instance of the node.

Attribute Value
name InstanceId
type xs:string
use optional

MSILocation

This is the full path to the MSI location.

Attribute Value
name MSILocation
type xs:string
use optional

ClusterManifestLocation

This is the full path to the Cluster Manifest Location.

Attribute Value
name ClusterManifestLocation
type xs:string
use optional

InfrastructureManifestLocation

This location of the infrastructure manifest that is internally generated.

Attribute Value
name InfrastructureManifestLocation
type xs:string
use optional

TargetVersion

This is the Target Version of the deployment.

Attribute Value
name TargetVersion
type xs:string
use optional

NodeName

This is the name of the Node to which the Fabric Upgrade is to happen

Attribute Value
name NodeName
type xs:string
use optional

RemoveNodeState

A flag indicating if RemoveNodeState Api should be called after removing node configuration.

Attribute Value
name RemoveNodeState
type xs:boolean
use optional
default false

UpgradeEntryPointExe

Name of the exe used by the installer service to upgrade

Attribute Value
name UpgradeEntryPointExe
type xs:string
use optional

UpgradeEntryPointExeParameters

Parameters to the Setup Entry point exe

Attribute Value
name UpgradeEntryPointExeParameters
type xs:string
use optional

UndoUpgradeEntryPointExe

Name of the exe used by the installer service to undo the upgrade

Attribute Value
name UndoUpgradeEntryPointExe
type xs:string
use optional

UndoUpgradeEntryPointExeParameters

Parameters to the Setup Entry point exe

Attribute Value
name UndoUpgradeEntryPointExeParameters
type xs:string
use optional

WindowsInfrastructureType complexType

Attribute Value
content 1 element(s), 0 attribute(s)
defined globally
name WindowsInfrastructureType

XML source

<xs:complexType xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="WindowsInfrastructureType">
                <xs:sequence>
                        <xs:element name="NodeList">
                                <xs:complexType>
                                        <xs:sequence>
                                                <xs:element name="Node" type="FabricNodeType" maxOccurs="unbounded"/>
                                        </xs:sequence>
                                </xs:complexType>
                        </xs:element>
                </xs:sequence>
        </xs:complexType>

Content element details

NodeList

Attribute Value
name NodeList