This commit is contained in:
2021-11-18 21:03:45 -05:00
parent 864051a4f0
commit 34672bf109
+28 -42
View File
@@ -1,53 +1,39 @@
## Make sure we have an administrative token
If ( IsAdmin )
{
$URL = 'https://lfupdate.s3.amazonaws.com/clients/windows_cli/LiquidFilesCLI-2.0.128.zip'
## Filename we'll download to
$FILENAME = Split-Path -Leaf $URL
## Full path for the downloaded zip file
$ZIP = "${Global:ToolsDirectory}\${FILENAME}"
## Once we extract the zip file, this will be the exe name inside
$EXE = '{0}.exe' -f [System.IO.Path]::GetFileNameWithoutExtension($FILENAME)
## Delete the zip file if it already exists
If ( Test-Path $ZIP ) {
LogMsg "Deleting existing file: ${ZIP}"
Try { Remove-Item $ZIP -Force }
Catch { LogErr $_.Exception.Message }
}
## Delete the exe file if it already exists
If ( Test-Path $EXE ) {
LogMsg "Deleting existing file: ${EXE}"
Try { Remove-Item $EXE -Force }
Catch { LogErr $_.Exception.Message }
}
## Download and unzip LiquidFiles CLI utility
Download-File -URL $URL -File $ZIP
Unzip-Object $ZIP
## Set the properties for the message
$From = $Env:COMPUTERNAME
$Subject = [System.IO.Path]::GetFileNameWithoutExtension($ZIP)
$Message = ""
If ( $LFCLI ) {
## Create the path to $FileToUpload and zip the specified directory if necessary
If ( $(Get-Item $DataToUpload) -is [System.IO.DirectoryInfo] ) {
$FileToUpload = '{0}\{1}.zip' -f $Global:OutputDirectory,$(Split-Path -Leaf $path)
$FileToUpload = '{0}\{1}.zip' -f $Global:OutputDirectory,$(Split-Path -Leaf $DataToUpload)
Zip-Object -path $DataToUpload -dest $FileToUpload
$DeleteAfterUpload = $true
}
Else { $FileToUpload = $DataToUpload }
Else {
$FileToUpload = $DataToUpload
$DeleteAfterUpload = $false
}
Install-PSAteraModule
Import-Module -Name PSAtera
Set-AteraAPIKey -APIKey $AteraAPIKey
$LFHost = $(Get-AteraCustomValue -ObjectType Customer -ObjectId 9 -FieldName 'LiquidFiles Host URL').ValueAsString
$FiledropURL = "${LFHost}/filedrop/cmd"
## Set the message properties for the file upload
$From = '{0}@{1}.net' -f $Env:COMPUTERNAME,$($Global:MSPName -replace " ","").ToLower()
$Subject = [System.IO.Path]::GetFileNameWithoutExtension($FileToUpload)
$Message = ""
If ( Test-Path $FileToUpload ) {
LogMsg "Uploading ""${FileToUpload}"""
Try { Start-Process "${EXE}" -ArgumentList "filedrop /url:xfer.emberkom.net /from:""${From}"" /subject:""${Subject}"" /msg:""${Message}"" /c:n /deleteAfterUpload /f:""${ZIP}""" -Wait }
Catch { LogErr $_.Exception.Message }
If ( $DeleteAfterUpload ) {
Try { Start-Process "${LFCLI}" -ArgumentList "filedrop /url:${FiledropURL} /from:""${From}"" /subject:""${Subject}"" /msg:""${Message}"" /c:n /deleteAfterUpload /f:""${FileToUpload}""" -Wait }
Catch { LogErr $_.Exception.Message }
}
Else {
Try { Start-Process "${LFCLI}" -ArgumentList "filedrop /url:${FiledropURL} /from:""${From}"" /subject:""${Subject}"" /msg:""${Message}"" /c:n /f:""${FileToUpload}""" -Wait }
Catch { LogErr $_.Exception.Message }
}
}
Else { LogMsg "The specified file does not exist: ""${FileToUpload}""" }
}
Else { LogMsg "Must be an administrator to upload files" }
Else { LogMsg "Could not upload any data because the LiquidFiles CLI tool was not found" }