installer-bootstrap.ps1 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. param($noexit)
  2. if (!$noexit) {
  3. Write-Host "`nRestarting PowerShell with -NoExit...`n"
  4. powershell -NoExit -File $MyInvocation.MyCommand.Path 1
  5. return
  6. }
  7. $basedir = "C:\FrameworkBenchmarks"
  8. $workdir = $basedir + "\installs"
  9. $repo = "https://github.com/TechEmpower/FrameworkBenchmarks"
  10. $installer = $basedir + "\installer.ps1"
  11. $git = "C:\Git\bin\git.exe"
  12. $gitinstaller_file = "Git-1.8.1.2-preview20130201.exe"
  13. $gitinstaller_url = "https://msysgit.googlecode.com/files/" + $gitinstaller_file
  14. $gitinstaller_local = $workdir + "\" + $gitinstaller_file
  15. Write-Host "Creating work directory: $workdir `n"
  16. New-Item -Path $workdir -Type Directory -Force | Out-Null
  17. Write-Host "Downloading git...`n"
  18. (New-Object System.Net.WebClient).DownloadFile($gitinstaller_url, $gitinstaller_local)
  19. Write-Host "Installing git...`n"
  20. Start-Process $gitinstaller_local '/silent /dir="C:\Git"' -Wait
  21. $env:Path += ";C:\Git\bin"; [Environment]::SetEnvironmentVariable("Path", $env:Path, [System.EnvironmentVariableTarget]::Machine)
  22. Write-Host "Removing git installation files...`n"
  23. Remove-Item -Recurse -Force $basedir
  24. Write-Host "Downloading FrameworkBenchmarks from git...`n"
  25. &$git "clone" $repo $basedir | Out-Host
  26. Write-Host "`nLaunching installer...`n"
  27. Set-ExecutionPolicy -ExecutionPolicy Bypass -ErrorAction 'SilentlyContinue'
  28. powershell -NoExit -File $installer