﻿<?xml version="1.0" encoding="utf-8"?>
<ScriptExport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.kaseya.com/vsa/2008/12/Scripting">
  <Procedure name="InstallAndCheckADV990001" treePres="3" id="1068580324" folderId="503153332557134" treeFullPath="KaseyaSupport.SSU_StandardTest">
    <Body description="">
      <Statement name="GetVariable" continueOnFail="false">
        <Parameter xsi:type="EnumParameter" name="VariableType" value="AgentTempDirectory" />
        <Parameter xsi:type="StringParameter" name="SourceContent" value="" />
        <Parameter xsi:type="StringParameter" name="VariableName" value="nonsecworkDir" />
      </Statement>
      <Statement name="GetVariable" continueOnFail="false">
        <Parameter xsi:type="EnumParameter" name="VariableType" value="Prompt" />
        <Parameter xsi:type="StringParameter" name="SourceContent" value="Endpoint Admin Username:" />
        <Parameter xsi:type="StringParameter" name="VariableName" value="username" />
      </Statement>
      <Statement name="GetVariable" continueOnFail="false">
        <Parameter xsi:type="EnumParameter" name="VariableType" value="Prompt" />
        <Parameter xsi:type="StringParameter" name="SourceContent" value="Endpoint Admin Password:" />
        <Parameter xsi:type="StringParameter" name="VariableName" value="password" />
      </Statement>
      <Statement name="ImpersonateUser" continueOnFail="false">
        <Parameter xsi:type="StringParameter" name="UserName" value="#username#" />
        <Parameter xsi:type="StringParameter" name="Password" value="#password#" />
        <Parameter xsi:type="StringParameter" name="Domain" value="" />
      </Statement>
      <Statement name="WriteFile" continueOnFail="false">
        <Parameter xsi:type="StringParameter" name="Path" value="#nonsecworkDir#\InstallAndCheckADV990001.ps1" />
        <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\InstallAndCheckADV990001.ps1" />
        <Parameter xsi:type="BooleanParameter" name="DeleteAfter" value="False" />
      </Statement>
      <If description="">
        <Condition name="TestFile">
          <Parameter xsi:type="StringParameter" name="Path" value="#nonsecworkDir#\InstallAndCheckADV990001.ps1" />
          <Parameter xsi:type="EnumParameter" name="Condition" value="Exists" />
          <Parameter xsi:type="StringParameter" name="Value" value="" />
        </Condition>
        <Then>
          <Statement name="WriteScriptLogEntry" continueOnFail="false">
            <Parameter xsi:type="StringParameter" name="Comment" value="Powershell file downloaded successfully." />
          </Statement>
          <Statement name="Execute Powershell Command (64-bit, Run As System)" continueOnFail="false">
            <Parameter xsi:type="StringParameter" name="Parameter1" value="#nonsecworkDir#\InstallAndCheckADV990001.ps1" />
            <Parameter xsi:type="StringParameter" name="Parameter2" value="#nonsecworkDir#" />
            <Parameter xsi:type="StringParameter" name="Parameter3" value="False" />
          </Statement>
          <Statement name="PauseScript" continueOnFail="false">
            <Parameter xsi:type="IntegerParameter" name="Seconds" value="5" />
          </Statement>
          <If description="">
            <Condition name="TestFile">
              <Parameter xsi:type="StringParameter" name="Path" value="#nonsecworkDir#\adv-results.txt" />
              <Parameter xsi:type="EnumParameter" name="Condition" value="Exists" />
              <Parameter xsi:type="StringParameter" name="Value" value="" />
            </Condition>
            <Then>
              <Statement name="GetVariable" continueOnFail="false">
                <Parameter xsi:type="EnumParameter" name="VariableType" value="FileContent" />
                <Parameter xsi:type="StringParameter" name="SourceContent" value="#nonsecworkDir#\adv-results.txt" />
                <Parameter xsi:type="StringParameter" name="VariableName" value="results" />
              </Statement>
              <Statement name="WriteScriptLogEntry" continueOnFail="false">
                <Parameter xsi:type="StringParameter" name="Comment" value="#results#" />
              </Statement>
              <If description="">
                <Condition name="TestFile">
                  <Parameter xsi:type="StringParameter" name="Path" value="#nonsecworkDir#\adv990001.msu" />
                  <Parameter xsi:type="EnumParameter" name="Condition" value="Exists" />
                  <Parameter xsi:type="StringParameter" name="Value" value="" />
                </Condition>
                <Then>
                  <Statement name="WriteScriptLogEntry" continueOnFail="false">
                    <Parameter xsi:type="StringParameter" name="Comment" value="Patch Package downloaded successfully." />
                  </Statement>
                  <Statement name="ExecuteShellCommand" continueOnFail="false">
                    <Parameter xsi:type="StringParameter" name="Command" value="wusa #nonsecworkDir#\adv990001.msu /quiet /norestart" />
                    <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" />
                    <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" />
                  </Statement>
                </Then>
                <Else>
                  <If description="">
                    <Condition name="TestFile">
                      <Parameter xsi:type="StringParameter" name="Path" value="#nonsecworkDir#\adv-results.txt" />
                      <Parameter xsi:type="EnumParameter" name="Condition" value="Contains" />
                      <Parameter xsi:type="StringParameter" name="Value" value="already" />
                    </Condition>
                    <Then>
                      <Statement name="WriteScriptLogEntry" continueOnFail="false">
                        <Parameter xsi:type="StringParameter" name="Comment" value="Patch already installed." />
                      </Statement>
                    </Then>
                    <Else>
                      <Statement name="WriteScriptLogEntry" continueOnFail="false">
                        <Parameter xsi:type="StringParameter" name="Comment" value="Patch Package file failed to download. Please review." />
                      </Statement>
                    </Else>
                  </If>
                </Else>
              </If>
            </Then>
            <Else>
              <Statement name="WriteScriptLogEntry" continueOnFail="false">
                <Parameter xsi:type="StringParameter" name="Comment" value="Results inconclusive, please review." />
              </Statement>
            </Else>
          </If>
        </Then>
        <Else>
          <Statement name="WriteScriptLogEntry" continueOnFail="false">
            <Parameter xsi:type="StringParameter" name="Comment" value="Powershell file failed to download. Please review." />
          </Statement>
        </Else>
      </If>
    </Body>
  </Procedure>
</ScriptExport>