@@ -1195,71 +1195,8 @@ if (-not $existingContainerId)
11951195 }
11961196}
11971197
1198- # Memory validation and calculation
1199- $hostReservedMemoryGB = 8
1200-
1201- # Parse Memory to get numeric value in GB
1202- function ConvertTo-MemoryGB
1203- {
1204- param ([string ]$MemoryString )
1205-
1206- if ($MemoryString -match ' ^(\d+(?:\.\d+)?)\s*[gG][bB]?$' )
1207- {
1208- return [double ]$Matches [1 ]
1209- }
1210- elseif ($MemoryString -match ' ^(\d+(?:\.\d+)?)\s*[mM][bB]?$' )
1211- {
1212- return [double ]$Matches [1 ] / 1024
1213- }
1214- elseif ($MemoryString -match ' ^(\d+)$' )
1215- {
1216- # Assume bytes
1217- return [double ]$Matches [1 ] / 1024 / 1024 / 1024
1218- }
1219- else
1220- {
1221- Write-Error " Invalid memory format: $MemoryString . Use formats like '12g', '12GB', '12288m', or '12288MB'."
1222- exit 1
1223- }
1224- }
1225-
1226- # Determine actual Docker memory limit
1227- if ($env: BuildAgentMemorySize )
1228- {
1229- # On build agents, use BuildAgentMemorySize to determine actual container memory
1230- $availableMemoryGB = ConvertTo-MemoryGB - MemoryString $env: BuildAgentMemorySize
1231- Write-Host " Available memory: $availableMemoryGB GB" - ForegroundColor Cyan
1232-
1233- $calculatedMemoryGB = [math ]::Floor($availableMemoryGB - $hostReservedMemoryGB )
1234- Write-Host " Memory available for container: $calculatedMemoryGB GB (after reserving ${hostReservedMemoryGB} GB for host)" - ForegroundColor Cyan
1235-
1236- if ($env: BuildAgentMaxMemory ) {
1237- $dockerMemoryLimitGB = [math ]::Min($env: BuildAgentMaxMemory , $calculatedMemoryGB )
1238- Write-Host " Max memory limit set to $env: BuildAgentMaxMemory GB from BuildAgentMaxMemory environment variable." - ForegroundColor Cyan
1239- } else {
1240- $dockerMemoryLimitGB = $calculatedMemoryGB
1241- }
1242- $dockerMemoryLimit = " ${dockerMemoryLimitGB} g"
1243- Write-Host " Container memory set to $dockerMemoryLimit " - ForegroundColor Cyan
1244- }
1245- else
1246- {
1247- # On developer machines, use Memory parameter as actual limit
1248- $dockerMemoryLimit = $Memory
1249- Write-Host " Container memory set to $dockerMemoryLimit (from Memory parameter)" - ForegroundColor Cyan
1250- }
1251-
1252- Write-Host " Number of requested CPUs is set to $Cpus " - ForegroundColor Cyan
1253-
1254- if ($env: BuildAgentMaxCpus )
1255- {
1256- $dockerCpus = [math ]::Min($env: BuildAgentMaxCpus , $Cpus )
1257- Write-Host " BuildAgentMaxCpus is set to $env: BuildAgentMaxCpus , actual number of CPUs will be $dockerCpus " - ForegroundColor Cyan
1258- }
1259- else
1260- {
1261- $dockerCpus = $Cpus
1262- }
1198+ $dockerMemoryLimit = $Memory
1199+ $dockerCpus = $Cpus
12631200
12641201# GHCR authentication and pull logic
12651202$builtNewImage = $false
0 commit comments