From aceeb3d00135a6d790cfca59d7dce0d198100009 Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Thu, 17 Jul 2025 15:52:42 +0200 Subject: [PATCH 1/7] Adding label to created containers --- Actions/RunPipeline/RunPipeline.ps1 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index a2dfa364bd..e63bd9800e 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -515,7 +515,8 @@ try { -pageScriptingTestResultsFolder (Join-Path $buildArtifactFolder 'PageScriptingTestResultDetails') ` -CreateRuntimePackages:$CreateRuntimePackages ` -appBuild $appBuild -appRevision $appRevision ` - -uninstallRemovedApps + -uninstallRemovedApps ` + -NewBcContainer { Param([Hashtable]$parameters) Write-Host "Debug custom container script.."; $parameters.additionalParameters += @("--label creator=AL-Go"); New-BcContainer @parameters; Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } } if ($containerBaseFolder) { Write-Host "Copy artifacts and build output back from build container" From be72d9932e56cf016643f78465207cc3c7e3f608 Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Thu, 17 Jul 2025 16:31:26 +0200 Subject: [PATCH 2/7] Adding ALGoContainerOnly to cache param of Flush-Container function. --- Actions/RunPipeline/RunPipeline.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index e63bd9800e..88db97a3d1 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -274,7 +274,7 @@ try { $imageName = $settings.cacheImageName if ($imageName) { Write-Host "::group::Flush ContainerHelper Cache" - Flush-ContainerHelperCache -cache 'all,exitedcontainers' -keepdays $settings.cacheKeepDays + Flush-ContainerHelperCache -cache 'all,exitedcontainers,ALGoContainersOnly' -keepdays $settings.cacheKeepDays Write-Host "::endgroup::" } } @@ -516,7 +516,7 @@ try { -CreateRuntimePackages:$CreateRuntimePackages ` -appBuild $appBuild -appRevision $appRevision ` -uninstallRemovedApps ` - -NewBcContainer { Param([Hashtable]$parameters) Write-Host "Debug custom container script.."; $parameters.additionalParameters += @("--label creator=AL-Go"); New-BcContainer @parameters; Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } } + -NewBcContainer { Param([Hashtable]$parameters) $parameters.additionalParameters += @("--label creator=AL-Go"); New-BcContainer @parameters; Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } } if ($containerBaseFolder) { Write-Host "Copy artifacts and build output back from build container" From 0b9d79f8a4decd0466f7dcbababfeed1f1e99d2a Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Wed, 20 Aug 2025 14:04:44 +0200 Subject: [PATCH 3/7] Only adding container fix if no override for NewBcContainer found. --- Actions/RunPipeline/RunPipeline.ps1 | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index 88db97a3d1..9a684c4036 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -321,6 +321,16 @@ try { } } } + if (!$runAlPipelineParams.NewBcContainer) { + $runAlPipelineParams += @{ + "NewBcContainer" = { + Param([Hashtable]$parameters) + $parameters.additionalParameters += @("--label creator=AL-Go"); + New-BcContainer @parameters; + Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } + } + } + } if ($runAlPipelineParams.Keys -notcontains 'RemoveBcContainer') { $runAlPipelineParams += @{ @@ -515,8 +525,7 @@ try { -pageScriptingTestResultsFolder (Join-Path $buildArtifactFolder 'PageScriptingTestResultDetails') ` -CreateRuntimePackages:$CreateRuntimePackages ` -appBuild $appBuild -appRevision $appRevision ` - -uninstallRemovedApps ` - -NewBcContainer { Param([Hashtable]$parameters) $parameters.additionalParameters += @("--label creator=AL-Go"); New-BcContainer @parameters; Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } } + -uninstallRemovedApps if ($containerBaseFolder) { Write-Host "Copy artifacts and build output back from build container" From 0ab1a64b60cb310e2ab9b3e91bb492af31cda751 Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Wed, 20 Aug 2025 14:14:24 +0200 Subject: [PATCH 4/7] Fixed if syntax. --- Actions/RunPipeline/RunPipeline.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index 9a684c4036..fd2963eb20 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -321,7 +321,7 @@ try { } } } - if (!$runAlPipelineParams.NewBcContainer) { + if ($runAlPipelineParams.Keys -notcontains 'NewBcContainer') { $runAlPipelineParams += @{ "NewBcContainer" = { Param([Hashtable]$parameters) From 97f5d21467e1e2a5e2a23b8c651f78df39a95889 Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Thu, 21 Aug 2025 08:33:47 +0200 Subject: [PATCH 5/7] Only flush ALGo containers when no override for NewBcContainer is used. --- Actions/RunPipeline/RunPipeline.ps1 | 31 +++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index fd2963eb20..5dfa2419d7 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -268,16 +268,7 @@ try { } $additionalCountries = $settings.additionalCountries - - $imageName = "" - if (-not $gitHubHostedRunner) { - $imageName = $settings.cacheImageName - if ($imageName) { - Write-Host "::group::Flush ContainerHelper Cache" - Flush-ContainerHelperCache -cache 'all,exitedcontainers,ALGoContainersOnly' -keepdays $settings.cacheKeepDays - Write-Host "::endgroup::" - } - } + $authContext = $null $environmentName = "" $CreateRuntimePackages = $false @@ -321,6 +312,8 @@ try { } } } + + $isNewBcContainerOverridden = $false if ($runAlPipelineParams.Keys -notcontains 'NewBcContainer') { $runAlPipelineParams += @{ "NewBcContainer" = { @@ -331,6 +324,9 @@ try { } } } + else { + $isNewBcContainerOverridden = $true + } if ($runAlPipelineParams.Keys -notcontains 'RemoveBcContainer') { $runAlPipelineParams += @{ @@ -379,6 +375,21 @@ try { } } + $imageName = "" + if (-not $gitHubHostedRunner) { + $imageName = $settings.cacheImageName + if ($imageName) { + Write-Host "::group::Flush ContainerHelper Cache" + # If a custom NewBcContainer is used, we can't guarantee that containers are marked as created by AL-Go. In that case purge all. + $flushCacheParam = 'all,exitedcontainers' + if (!$isNewBcContainerOverridden) { + $flushCacheParam += ',ALGoContainersOnly' + } + Flush-ContainerHelperCache -cache $flushCacheParam -keepdays $settings.cacheKeepDays + Write-Host "::endgroup::" + } + } + if ((($bcContainerHelperConfig.ContainsKey('TrustedNuGetFeeds') -and ($bcContainerHelperConfig.TrustedNuGetFeeds.Count -gt 0)) -or ($gitHubPackagesContext)) -and ($runAlPipelineParams.Keys -notcontains 'InstallMissingDependencies')) { if ($githubPackagesContext) { $gitHubPackagesCredential = $gitHubPackagesContext | ConvertFrom-Json From 8edf053230c2a9c1e999a928857c26174c756307 Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Fri, 22 Aug 2025 16:26:10 +0200 Subject: [PATCH 6/7] Adding debug output. --- Actions/RunPipeline/RunPipeline.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index 5dfa2419d7..b0126c57fd 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -385,6 +385,7 @@ try { if (!$isNewBcContainerOverridden) { $flushCacheParam += ',ALGoContainersOnly' } + OutputDebug -message "Running Flush-ContainerHelperCache with parameters: -cache $flushCacheParam -keepdays $($settings.cacheKeepDays)" Flush-ContainerHelperCache -cache $flushCacheParam -keepdays $settings.cacheKeepDays Write-Host "::endgroup::" } From 84d63d4fb13f5554a5f423dce267bf389e0a24f8 Mon Sep 17 00:00:00 2001 From: Sebastian Petersen Date: Mon, 25 Aug 2025 09:24:20 +0200 Subject: [PATCH 7/7] Pre-commit --- Actions/RunPipeline/RunPipeline.ps1 | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Actions/RunPipeline/RunPipeline.ps1 b/Actions/RunPipeline/RunPipeline.ps1 index b0126c57fd..30c1cc50e2 100644 --- a/Actions/RunPipeline/RunPipeline.ps1 +++ b/Actions/RunPipeline/RunPipeline.ps1 @@ -268,7 +268,7 @@ try { } $additionalCountries = $settings.additionalCountries - + $authContext = $null $environmentName = "" $CreateRuntimePackages = $false @@ -316,11 +316,11 @@ try { $isNewBcContainerOverridden = $false if ($runAlPipelineParams.Keys -notcontains 'NewBcContainer') { $runAlPipelineParams += @{ - "NewBcContainer" = { - Param([Hashtable]$parameters) - $parameters.additionalParameters += @("--label creator=AL-Go"); - New-BcContainer @parameters; - Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } + "NewBcContainer" = { + Param([Hashtable]$parameters) + $parameters.additionalParameters += @("--label creator=AL-Go"); + New-BcContainer @parameters; + Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' } } } } @@ -537,7 +537,7 @@ try { -pageScriptingTestResultsFolder (Join-Path $buildArtifactFolder 'PageScriptingTestResultDetails') ` -CreateRuntimePackages:$CreateRuntimePackages ` -appBuild $appBuild -appRevision $appRevision ` - -uninstallRemovedApps + -uninstallRemovedApps if ($containerBaseFolder) { Write-Host "Copy artifacts and build output back from build container"