From de68ede13a333ea7309d6b3d80ae3096219afe36 Mon Sep 17 00:00:00 2001 From: David Yoder Date: Fri, 29 Sep 2023 16:49:05 -0400 Subject: [PATCH] initial commit --- Install-SyncroAgent.ps1 | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Install-SyncroAgent.ps1 diff --git a/Install-SyncroAgent.ps1 b/Install-SyncroAgent.ps1 new file mode 100644 index 0000000..bc1c169 --- /dev/null +++ b/Install-SyncroAgent.ps1 @@ -0,0 +1,31 @@ +param( + [Parameter(Mandatory=$true)][string]$URL, + [Parameter(Mandatory=$false)][string]$AGENT_FILENAME="SyncroInstaller.msi", + [Parameter(Mandatory=$false)][switch]$FORCE=$false +) + +# Delete this script +Remove-Item $MyInvocation.MyCommand.Path -Force + +# Exit early if we don't need to install the agent +If ( ($FORCE -eq $false) -and ((Test-Path "${Env:ProgramFiles}\RepairTech\Syncro\Syncro.App.Runner.exe") -or (Test-Path "${Env:ProgramFiles(x86)}\RepairTech\Syncro\Syncro.App.Runner.exe")) ) { Exit } + +Function SourceTools +{ . $([Scriptblock]::Create((New-Object Net.WebClient).DownloadString('https://dev.emberkom.com/emberkom/management-scripts/raw/branch/master/Tools.ps1'))) } +. SourceTools + +# Build the path for $AGENT_INSTALLER +$AGENT_INSTALLER = '{0}{1}' -f (GetTempPath), $AGENT_FILENAME + +# Download agent installer +Download-File -URL $URL -File "${AGENT_INSTALLER}" + + # Install the agent + LogMsg "Installing Syncro agent from ""${AGENT_INSTALLER}""" + Try { Start-Process "msiexec.exe" -ArgumentList "/i ""${AGENT_INSTALLER}"" /qn /norestart" -Wait } + Catch { LogErr $_.Exception.Message } + + # Delete the agent installer + LogMsg "Deleting ""${AGENT_INSTALLER}""" + Try { Remove-Item $AGENT_INSTALLER -Force } + Catch { LogErr $_.Exception.Message } \ No newline at end of file