You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/service-fabric/service-fabric-startupservices-model.md
+8-7Lines changed: 8 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,20 +6,22 @@ ms.author: tomcassidy
6
6
author: tomvcassidy
7
7
ms.service: service-fabric
8
8
services: service-fabric
9
-
ms.date: 07/11/2022
9
+
ms.date: 04/09/2024
10
10
---
11
11
12
12
# Introducing StartupServices.xml in Service Fabric Application
13
13
This feature introduces StartupServices.xml file in a Service Fabric Application design. This file hosts DefaultServices section of ApplicationManifest.xml. With this implementation, DefaultServices and Service definition-related parameters are moved from existing ApplicationManifest.xml to this new file called StartupServices.xml. This file is used in each functionalities (Build/Rebuild/F5/Ctrl+F5/Publish) in Visual Studio.
14
14
15
-
Note - StartupServices.xml is only meant for Visual Studio deployments, this arrangement is to ensure that packages deployed with Visual Studio (with StartupServices.xml) do not have conflicts with ARM deployed services. StartupServices.xml is not packaged as part of application package. It is not supported in DevOps pipeline and customer should deploy individual services in Application either via ARM or through cmdlets with desired configuration.
15
+
StartupServices.xml is only meant for Visual Studio deployments. This arrangement is to ensure that packages deployed with Visual Studio (with StartupServices.xml) don't have conflicts with ARM deployed services.
16
+
17
+
StartupServices.xml isn't packaged as part of application package. It isn't supported in DevOps pipeline and customers should deploy individual services in an application manifest either [via ARM](service-fabric-application-arm-resource.md) or [through cmdlets](service-fabric-deploy-remove-applications.md) with desired configuration.
16
18
17
19
## Existing Service Fabric Application Design
18
20
For each service fabric application, ApplicationManifest.xml is the source of all service-related information for the application. ApplicationManifest.xml consists of all Parameters, ServiceManifestImport, and DefaultServices. Configuration parameters are mentioned in Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters.
19
21
20
-
When a new service is added in an application, for this new service Parameters, ServiceManifestImport and DefaultServices sections are added inside ApplicationManifest.xml. Configuration parameters are added in Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters.
22
+
When a new service is added in an application, new service Parameters, ServiceManifestImport and DefaultServices sections are added inside ApplicationManifest.xml. Configuration parameters are added in Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters.
21
23
22
-
When user clicks on Build/Rebuild function in Visual Studio, modification of ServiceManifestImport, Parameters, and DefaultServices sections happens in ApplicationManifest.xml. Configuration parameters are also edited in Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters.
24
+
When user selects on Build/Rebuild function in Visual Studio, modification of ServiceManifestImport, Parameters, and DefaultServices sections happens in ApplicationManifest.xml. Configuration parameters are also edited in Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters.
23
25
24
26
When user triggers F5/Ctrl+F5/Publish, application and services are deployed or published based on the information in ApplictionManifest.xml. Configuration parameters are used from any of Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters.
25
27
@@ -66,7 +68,7 @@ Sample ApplicationManifest.xml
66
68
```
67
69
68
70
## New Service Fabric Application Design with StartupServices.xml
69
-
In this design, there is a clear distinction between service level information (for example, Service definition and Service parameters) and application-level information (ServiceManifestImport and ApplicationParameters). StartupServices.xml contains all service-level information whereas ApplicationManifest.xml contains all application-level information. Another change introduced is addition of Cloud.xml/Local1Node.xml/Local5Node.xml under StartupServiceParameters, which has configuration for service parameters only. Existing Cloud.xml/Local1Node.xml/Local5Node.xml under ApplicationParameters contains only application-level parameters configuration.
71
+
In this design, there's a clear distinction between service level information (for example, Service definition and Service parameters) and application-level information (ServiceManifestImport and ApplicationParameters). StartupServices.xml contains all service-level information whereas ApplicationManifest.xml contains all application-level information. Another change introduced is addition of Cloud.xml/Local1Node.xml/Local5Node.xml under StartupServiceParameters, which has configuration for service parameters only. Existing Cloud.xml/Local1Node.xml/Local5Node.xml under ApplicationParameters contains only application-level parameters configuration.
70
72
71
73
When a new service is added in application, Application-level Parameters and ServiceManifestImport are added in ApplicationManifest.xml. Configuration for application parameters are added in Cloud.xml/Local1Node.xml/Local5Node.xml files under ApplicationParameters. Service information and Service Parameters are added in StartupServices.xml and configuration for service parameters are added in Cloud.xml/Local1Node.xml/Local5Node.xml under StartupServiceParameters.
The startupServices.xml feature is enabled for all new project in SF SDK version 5.0.516.9590 and above. Projects created with older version of SDK are are fully backward compatible with latest SDK. Migration of old projects into new design is not supported. If user wants to create an Service Fabric Application without StartupServices.xml in newer version of SDK, user should click on "Help me choose a project template" link as shown in picture below.
133
+
The startupServices.xml feature is enabled for all new project in SF SDK version 5.0.516.9590 and above. Projects created with older version of SDK are fully backward compatible with latest SDK. Migration of old projects into new design isn't supported. If user wants to create a Service Fabric Application without StartupServices.xml in newer version of SDK, user should select on "Help me choose a project template" link as shown in following picture.
132
134
133
135
![Create New Application option in New Design][create-new-project]
134
136
135
-
136
137
## Next steps
137
138
- Learn about [Service Fabric Application Model](service-fabric-application-model.md).
138
139
- Learn about [Service Fabric Application and Service Manifests](service-fabric-application-and-service-manifests.md).
0 commit comments