aboutsummaryrefslogtreecommitdiff
path: root/llama.cpp/.github/actions/install-exe/action.yml
blob: 002bec83c7749e4355e3f623ebdce72761902deb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
name: "Install exe"
description: "Download and install exe"
inputs:
  url:
    description: "URL of the exe installer"
    required: true
  args:
    description: "Installer arguments"
    required: true
  timeout:
    description: "Timeout (in ms)"
    required: false
    default: "600000"

runs:
  using: "composite"
  steps:
    - name: Install EXE
      shell: pwsh
      run: |
        $ErrorActionPreference = "Stop"
        write-host "Downloading Installer EXE"
        Invoke-WebRequest -Uri "${{ inputs.url }}" -OutFile "${env:RUNNER_TEMP}\temp-install.exe"
        write-host "Installing"
        $proc = Start-Process "${env:RUNNER_TEMP}\temp-install.exe" -ArgumentList '${{ inputs.args }}' -NoNewWindow -PassThru
        $completed = $proc.WaitForExit(${{ inputs.timeout }})
        if (-not $completed) {
            Write-Error "Installer timed out. Killing the process"
            $proc.Kill()
            exit 1
        }
        if ($proc.ExitCode -ne 0) {
            Write-Error "Installer failed with exit code $($proc.ExitCode)"
            exit 1
        }
        write-host "Completed installation"