################################################################################ ## File: Configure-Toolset.ps1 ## Team: CI-Build ## Desc: Configure toolset ################################################################################ Import-Module "~/image-generation/helpers/Common.Helpers.psm1" function Get-ToolsetToolFullPath { param ( [Parameter(Mandatory)] [string] $ToolName, [Parameter(Mandatory)] [string] $ToolVersion, [Parameter(Mandatory)] [string] $ToolArchitecture ) $toolPath = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $toolName $toolPathVersion = Join-Path -Path $toolPath -ChildPath $toolVersion $foundVersion = Get-Item $toolPathVersion | Sort-Object -Property {[version]$_.name} -Descending | Select-Object -First 1 $installationDir = Join-Path -Path $foundVersion -ChildPath $toolArchitecture return $installationDir } $arch = Get-Architecture $toolcache = (Get-ToolsetContent).toolcache foreach ($tool in $toolcache) { $toolName = $tool.name $toolEnvironment = $tool.arch.$arch.variable_template if (-not $toolEnvironment) { continue } foreach ($toolVersion in $tool.arch.$arch.versions) { Write-Host "Set $toolName $toolVersion environment variable..." $toolPath = Get-ToolsetToolFullPath -ToolName $toolName -ToolVersion $toolVersion -ToolArchitecture $arch $envName = $toolEnvironment -f $toolVersion.split(".") # Add environment variable name=value $envVar = "export {0}={1}" -f $envName, $toolPath Add-Content -Path "${env:HOME}/.bashrc" -Value $envVar } }