diff --git a/vm-qs/main.tf b/vm-qs/main.tf index d3bbd71..3ff76d3 100644 --- a/vm-qs/main.tf +++ b/vm-qs/main.tf @@ -94,7 +94,7 @@ resource "azurerm_windows_virtual_machine" "vm" { https = false timeout = "3m" } - source = "${path.module}/scripts" + source = "${path.module}/main" destination = "C:/provision" } @@ -110,6 +110,7 @@ resource "azurerm_windows_virtual_machine" "vm" { } inline = [ + "powershell.exe -File C:/provision/prep-files.ps1", "powershell.exe -File C:/provision/bootstrap-qs.ps1 -ModuleName vm-qs", "powershell.exe -File C:/provision/gen-jwt.ps1" ] diff --git a/vm-qs/main/prep-files.ps1 b/vm-qs/main/prep-files.ps1 new file mode 100644 index 0000000..586cbd1 --- /dev/null +++ b/vm-qs/main/prep-files.ps1 @@ -0,0 +1,29 @@ + +Param( + [string] $repo="qmi-cloud-tf-modules", + [string] $branch="master", + [string] $scenario="vm-qs", + [string] $path="scripts" +) + +$pathIs="$scenario/$path" + +$DownloadUrl="https://gitlab.com/qmi/$repo/-/archive/$branch/$repo-$branch.zip?path=$pathIs" + +Write-Host "--- Boostrap# Downloading repository files from branch ($branch)..." + +New-Item -ItemType Directory -Force -Path C:\Temp | Out-Null + +$ProgressPreference = 'SilentlyContinue' + +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +(New-Object System.Net.WebClient).DownloadFile($DownloadUrl, "C:\Temp\$scenario.zip") + +Expand-Archive "C:\Temp\$scenario.zip" -DestinationPath "C:\Temp" -Force + +New-Item -ItemType Directory -Force -Path C:\Provision | Out-Null + +Copy-Item -Path "C:\Temp\$repo-$branch-$scenario-scripts\$scenario\$path\*" -Destination "C:\Provision" -Recurse -Force + +Remove-Item "C:\Temp\$repo-$branch-$scenario-scripts" -Recurse +Remove-Item "C:\Temp\$scenario.zip" -Recurse