50 lines
2.1 KiB
PowerShell
50 lines
2.1 KiB
PowerShell
param(
|
|
[Parameter(Mandatory=$true)][int]$CUSTOMER_ID,
|
|
[Parameter(Mandatory=$true)][string]$INTEGRATOR_ID,
|
|
[Parameter(Mandatory=$false)][string]$AGENT_FILENAME="EmberkomAteraAgentSetup.msi",
|
|
[Parameter(Mandatory=$false)][switch]$FORCE
|
|
)
|
|
|
|
## Source the Tools.ps1 script
|
|
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
|
|
|
|
## Make sure we need to install the agent
|
|
If ( (Test-Path "${Env:ProgramFiles}\ATERA Networks\AteraAgent\AteraAgent.exe") -or (Test-Path "${Env:ProgramFiles(x86)}\ATERA Networks\AteraAgent\AteraAgent.exe") )
|
|
{ $INSTALL = $false ; $PreviousInstall = $true } Else { $INSTALL = $true ; $PreviousInstall = $false }
|
|
|
|
If ( $FORCE ) { $INSTALL = $true }
|
|
|
|
If ( $INSTALL ) {
|
|
|
|
## Uninstall if $FORCE is true
|
|
If ( $PreviousInstall ) {
|
|
LogMsg "Uninstalling previously installed agent"
|
|
$UninstallScript = Download-File -URL 'https://dev.emberkom.com/emberkom/management-scripts/raw/branch/master/Uninstall-AteraAgent.bat'
|
|
Try { Start-Process "cmd.exe" -ArgumentList "/c ""${UninstallScript}""" -Wait }
|
|
Catch { LogErr $_.Exception.Message }
|
|
Try { Remove-Item $UninstallScript -Force }
|
|
Catch { LogErr $_.Exception.Message }
|
|
}
|
|
|
|
## Download agent installer
|
|
Download-File -URL 'https://dev.emberkom.com/emberkom/management-scripts/raw/branch/master/resources/AteraAgentSetup.msi' -File "${AGENT_INSTALLER}"
|
|
|
|
## Install the agent
|
|
LogMsg "Installing Atera agent"
|
|
Try { Start-Process "msiexec.exe" -ArgumentList "/i ""${AGENT_INSTALLER}"" /qn /norestart INTEGRATORLOGIN=${INTEGRATOR_ID} COMPANYID=${CUSTOMER_ID}" -Wait }
|
|
Catch { LogErr $_.Exception.Message }
|
|
|
|
## Delete the agent installer
|
|
LogMsg "Deleting ""${AGENT_INSTALLER}"""
|
|
Try { Remove-Item $AGENT_INSTALLER -Force }
|
|
Catch { LogErr $_.Exception.Message }
|
|
|
|
} Else { LogMsg "Atera agent is already installed on this endpoint." }
|
|
|
|
|