From c13795234535f54da4901e04d34161c58811cfd8 Mon Sep 17 00:00:00 2001 From: Manuel Thalmann Date: Wed, 31 Jul 2024 14:55:00 +0200 Subject: [PATCH] Add a separate script for injecting values into scripts --- scripts/Windows/OS/Setup.ps1 | 11 ++++------- scripts/Windows/Scripts/Scripting.ps1 | 16 ++++++++++++++++ 2 files changed, 20 insertions(+), 7 deletions(-) create mode 100644 scripts/Windows/Scripts/Scripting.ps1 diff --git a/scripts/Windows/OS/Setup.ps1 b/scripts/Windows/OS/Setup.ps1 index 2cec7707..3d017029 100644 --- a/scripts/Windows/OS/Setup.ps1 +++ b/scripts/Windows/OS/Setup.ps1 @@ -1,5 +1,8 @@ #!/bin/pwsh +. "$PSScriptRoot/../Scripts/Scripting.ps1"; + function Start-Setup { + . "$PSScriptRoot/../Scripts/Scripting.ps1"; $Global:InformationPreference = "Continue"; $Global:ErrorActionPreference = "Inquire"; $null = $env:WIN_COMPUTER_NAME; @@ -52,15 +55,9 @@ function Start-Setup { $relativePath = [System.IO.Path]::GetRelativePath("$PSScriptRoot/../../..", $path); Join-Path $env:REMOTE_PROJECT_PATH $relativePath; } - - function Get-Injection($value) { - "([System.Text.Encoding]::Default.GetString([System.Convert]::FromBase64String('$( - [System.Convert]::ToBase64String([System.Text.Encoding]::Default.GetBytes($value)) - )')))" - } function Get-PathInjection($path) { - "(Join-Path `$env:SystemDrive $(Get-Injection $path))" + "(Join-Path `$env:SystemDrive $(ConvertTo-Injection $path))" } function Get-ScriptPathInjection($path) { diff --git a/scripts/Windows/Scripts/Scripting.ps1 b/scripts/Windows/Scripts/Scripting.ps1 new file mode 100644 index 00000000..e0a9f912 --- /dev/null +++ b/scripts/Windows/Scripts/Scripting.ps1 @@ -0,0 +1,16 @@ +<# + .SYNOPSIS + Converts the specified value into a form to safle inject it into a script. + + .PARAMETER value + The value to convert for injection. +#> +function ConvertTo-Injection { + param( + $Value + ) + + "([System.Text.Encoding]::Default.GetString([System.Convert]::FromBase64String('$( + [System.Convert]::ToBase64String([System.Text.Encoding]::Default.GetBytes($value)) + )')))" +}