github.com/hernad/nomad@v1.6.112/e2e/terraform/packer/windows-2016-amd64/install-consul.ps1 (about) 1 # Copyright (c) HashiCorp, Inc. 2 # SPDX-License-Identifier: MPL-2.0 3 4 Set-StrictMode -Version latest 5 $ErrorActionPreference = "Stop" 6 7 # Force TLS1.2 8 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 9 10 Set-Location C:\opt 11 12 Try { 13 $releases = "https://releases.hashicorp.com" 14 $version = "1.11.4+ent" 15 $url = "${releases}/consul/${version}/consul_${version}_windows_amd64.zip" 16 17 New-Item -ItemType Directory -Force -Path C:\opt\consul 18 New-Item -ItemType Directory -Force -Path C:\etc\consul.d 19 20 # TODO: check sha! 21 Write-Output "Downloading Consul from: $url" 22 Invoke-WebRequest -Uri $url -Outfile consul.zip -ErrorAction Stop 23 Expand-Archive .\consul.zip .\ -ErrorAction Stop 24 Move-Item consul.exe C:\opt\consul.exe -Force -ErrorAction Stop 25 C:\opt\consul.exe version 26 rm consul.zip 27 28 New-Service ` 29 -Name "Consul" ` 30 -BinaryPathName "C:\opt\consul.exe agent -config-dir C:\etc\consul.d" ` 31 -StartupType "Automatic" ` 32 -ErrorAction Ignore 33 34 } Catch { 35 Write-Output "Failed to install Consul." 36 Write-Output $_ 37 $host.SetShouldExit(-1) 38 throw 39 } 40 41 Write-Output "Installed Consul."