40 lines
1.8 KiB
PowerShell
40 lines
1.8 KiB
PowerShell
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 $DataToUpload)
|
|
Zip-Object -path $DataToUpload -dest $FileToUpload
|
|
$DeleteAfterUpload = $true
|
|
}
|
|
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 ) {
|
|
Write-Output "Uploading ""${FileToUpload}"""
|
|
|
|
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 { Write-Output "The specified file does not exist: ""${FileToUpload}""" }
|
|
}
|
|
Else { Write-Output "Could not upload any data because the LiquidFiles CLI tool was not found" }
|