60 lines
1.8 KiB
XML
60 lines
1.8 KiB
XML
<workflow>
|
|
<rule match="$.services.webServers[?(@.domain)].units[*]">
|
|
<set path="domain">
|
|
<select path="::domain"/>
|
|
</set>
|
|
</rule>
|
|
|
|
<rule match="$.services.webServers[*].units[?(@.state.instanceName is None)]">
|
|
<report entity="unit">
|
|
<parameter name="id"><select path="id"/></parameter>
|
|
<parameter name="text">Creating instance <select path="name"/></parameter>
|
|
</report>
|
|
<update-cf-stack template="Windows">
|
|
<parameter name="mappings">
|
|
<map>
|
|
<mapping name="instanceName">
|
|
<select path="name"/>
|
|
</mapping>
|
|
<mapping name="userData">
|
|
<prepare_user_data/>
|
|
</mapping>
|
|
</map>
|
|
</parameter>
|
|
<parameter name="arguments">
|
|
<map>
|
|
<argument name="KeyName">keero-linux-keys</argument>
|
|
<argument name="InstanceType">m1.medium</argument>
|
|
<argument name="ImageName">ws-2012-full</argument>
|
|
</map>
|
|
</parameter>
|
|
|
|
<success>
|
|
<set path="state.instanceName"><select path="name"/></set>
|
|
<report entity="unit">
|
|
<parameter name="id"><select path="id"/></parameter>
|
|
<parameter name="text">Instance <select path="name"/> created</parameter>
|
|
</report>
|
|
</success>
|
|
</update-cf-stack>
|
|
</rule>
|
|
|
|
<rule match="$.services.webServers[*].units[?(@.state.instanceName and not @.state.iisInstalled)]">
|
|
<report entity="unit">
|
|
<parameter name="id"><select path="id"/></parameter>
|
|
<parameter name="text">Creating IIS Web Server on unit <select path="name"/></parameter>
|
|
</report>
|
|
<send-command template="InstallIIS">
|
|
<parameter name="host">
|
|
<select path="name"/>
|
|
</parameter>
|
|
<success>
|
|
<set path="state.iisInstalled"><true/></set>
|
|
<report entity="unit">
|
|
<parameter name="id"><select path="id"/></parameter>
|
|
<parameter name="text">IIS <select path="name"/> has started</parameter>
|
|
</report>
|
|
</success>
|
|
</send-command>
|
|
</rule>
|
|
</workflow> |