mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-14 05:30:55 +00:00
Fix Windows agent installer readiness path
This commit is contained in:
parent
6f4a9ca88b
commit
84c43ad3e1
10 changed files with 190 additions and 44 deletions
|
|
@ -171,9 +171,15 @@ func TestInstallPS1SupportsDownloadPreflightBeforeAdministratorInstall(t *testin
|
|||
`[bool]$NonInteractive = $false`,
|
||||
`if (-not $isAdmin -and -not $PreflightOnly) {`,
|
||||
`function Write-InstallerEvent {`,
|
||||
`function Get-ResponseHeaderValue {`,
|
||||
`function Invoke-AgentDownloadPreflight {`,
|
||||
`Invoke-WebRequest -Uri $Uri -Method Head -UseBasicParsing -TimeoutSec 10 -ErrorAction Stop`,
|
||||
`$checksum = $preflightResponse.Headers["X-Checksum-Sha256"]`,
|
||||
`$checksum = Get-ResponseHeaderValue -Headers $preflightResponse.Headers -Name "X-Checksum-Sha256"`,
|
||||
`$downloadPreflightResponse = Invoke-WithOptionalInsecureTls -AllowInsecure $Insecure -CustomCaCertificate $CustomCaCertificate -Action {`,
|
||||
`Invoke-WebRequest -Uri $DownloadUrl -Method Head -UseBasicParsing -TimeoutSec 10 -ErrorAction Stop`,
|
||||
`$serverChecksum = Get-ResponseHeaderValue -Headers $downloadPreflightResponse.Headers -Name "X-Checksum-Sha256"`,
|
||||
`$downloadMetadata = Invoke-WithOptionalInsecureTls -AllowInsecure $Insecure -CustomCaCertificate $CustomCaCertificate -Action {`,
|
||||
`$downloadChecksum = Get-ResponseHeaderValue -Headers $webClient.ResponseHeaders -Name "X-Checksum-Sha256"`,
|
||||
`agent_download_checksum_missing`,
|
||||
`agent_download_available`,
|
||||
`agent_download_unavailable`,
|
||||
|
|
@ -217,7 +223,8 @@ func TestInstallPS1UsesHostnameLookupForUninstallFallback(t *testing.T) {
|
|||
`$lookupHostname = $Hostname`,
|
||||
`$lookupHostname = $env:COMPUTERNAME`,
|
||||
`Uri = "$Url/api/agents/agent/lookup?hostname=$([System.Uri]::EscapeDataString($lookupHostname))"`,
|
||||
`$lookupResult = Invoke-RestMethod @lookupArgs`,
|
||||
`$lookupResult = Invoke-WithOptionalInsecureTls -AllowInsecure $Insecure -CustomCaCertificate $customCaCertificate -Action {`,
|
||||
`Invoke-RestMethod @lookupArgs`,
|
||||
}
|
||||
for _, needle := range required {
|
||||
if !strings.Contains(script, needle) {
|
||||
|
|
@ -313,7 +320,7 @@ func TestInstallPS1RequiresPinnedSignatureVerificationForReleaseDownloads(t *tes
|
|||
`function Test-HasPinnedInstallerSignatureKey {`,
|
||||
`function Invoke-InstallerSignatureVerification {`,
|
||||
`Get-Command ssh-keygen.exe -ErrorAction SilentlyContinue`,
|
||||
`$serverSshSignature = $webClient.ResponseHeaders[$InstallerSignatureHeaderName]`,
|
||||
`$serverSshSignature = Get-ResponseHeaderValue -Headers $downloadPreflightResponse.Headers -Name $InstallerSignatureHeaderName`,
|
||||
`Show-Error "Server did not provide checksum header; refusing signed install."`,
|
||||
`Show-Error "Server did not provide SSH signature header; refusing signed install."`,
|
||||
`Invoke-InstallerSignatureVerification -FilePath $TempPath -SignatureHeader $serverSshSignature`,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue