Atomia Automation Server

Simple service example

14 views 0

Configuration examples of how to define the services the Atomia Automation Server works with.

Parent – Child structure

The simple service structure looks like this:

                 <simpleService name="SimpleService" friendlyName="Simple service example" providingModule="Atomia.Provisioning.Modules.ExampleModule">
                 <propertyList>
                 <!-- List of simple service properties. -->
                 </propertyList>
                 <operationList>
                 <!-- List of operations which can be executed on this type of simple service. -->
                 </operationList>
                 <childServiceList>
                 <!-- List of child simple services. -->
                 </childServiceList>
                 <actionHooks>
                 <!-- Registered action hooks for this type of service. -->
                 </actionHooks>
                 </simpleService>

Let’s say we want to describe the simple service IISApplicationPool. Its description should look like something like this:

                 <simpleService name="IISApplicationPool" friendlyName="IIS Application Pool" providingModule="Atomia.Provisioning.Modules.IIS.IIS7" min="1">
                 <propertyList>
                 <property name="Name" friendlyName="Application Pool Name" defaultValue="" key="true" />
                 <property name="Username" friendlyName="Application Pool User" defaultValue="" key="true" />
                 <property name="Password" friendlyName="Application Pool User's Password" defaultValue="" storeType="encrypt" log="false" />
                 </propertyList>
                 <operationList>
                 <operation name="GenerateSSLRequest" />
                 </operationList>
                 </simpleService>

Here we have defined one simple service, added some properties and marked properties Name and Username as key properties. Also, this service has one operation: GenerateSSLRequest.

Let’s now say that we have a service called IISWebSite. This service is a child of  IISApplicationPool  and we want to describe this relationship using the service description. This is very simple to do. A complete IISWebSite service description should be added under the childServiceList subsection of the IISApplicationPool service:

                 <simpleService name="IISApplicationPool" friendlyName="IIS Application Pool" providingModule="Atomia.Provisioning.Modules.IIS.IIS7" min="1">
                 <propertyList>
                 <property name="Name" friendlyName="Application Pool Name" defaultValue="" key="true" />
                 <property name="Username" friendlyName="Application Pool User" defaultValue="" key="true" />
                 <property name="Password" friendlyName="Application Pool User's Password" defaultValue="" storeType="encrypt" log="false" />
                 </propertyList>
                 <operationList>
                 <operation name="GenerateSSLRequest" />
                 </operationList>
                 <childServiceList>
                 <simpleService name="IISWebSite" friendlyName="IIS Web Site" providingModule="Atomia.Provisioning.Modules.IIS.IIS7">
                 <propertyList>
                 <property name="Name" friendlyName="Web site name" key="true" />
                 <property name="HomeDirectory" friendlyName="Home Direcotory" />
                 <property name="ConnectionTimeout" friendlyName="Connection Timeout" defaultValue="00:02:00" />
                 <property name="MaximumBandwidth" friendlyName="Maximum Bandwidth" defaultValue="104857600" />
                 </propertyList>
                 <operationList>
                 <operation name="Start" />
                 <operation name="Stop" />
                 </operationList>
                 </simpleService>
                 </childServiceList>
                 </simpleService>

If the simple service should not have a parent service then its description must be placed in the simpleServiceList subsection. Each child service description must be placed in the appropriate parent’s childServiceList subsection.

Was this helpful?