diff --git a/Actions/.Modules/settings.schema.json b/Actions/.Modules/settings.schema.json
index 4a1cd415d..a1ac71ab8 100644
--- a/Actions/.Modules/settings.schema.json
+++ b/Actions/.Modules/settings.schema.json
@@ -466,7 +466,8 @@
"description": "The shell to be used for the GitHub runner. See https://aka.ms/ALGoSettings#githubrunnershell"
},
"cacheImageName": {
- "type": "string"
+ "type": "string",
+ "description": "When using self-hosted runners or localDevEnv, cacheImageName specifies the prefix for the docker image created for increased performance. Set to an empty string to retain the previous local-development behavior. See https://aka.ms/ALGoSettings#cacheimagename"
},
"cacheKeepDays": {
"type": "number",
diff --git a/Actions/AL-Go-Helper.ps1 b/Actions/AL-Go-Helper.ps1
index fdda3213f..209b2a399 100644
--- a/Actions/AL-Go-Helper.ps1
+++ b/Actions/AL-Go-Helper.ps1
@@ -1825,11 +1825,16 @@ function CreateDevEnv {
$sharedFolder = $baseFolder
}
+ $imageName = ""
+ if ($kind -eq "local") {
+ $imageName = $settings.cacheImageName
+ }
+
Run-AlPipeline @runAlPipelineParams `
-accept_insiderEula:$accept_insiderEula `
-vsixFile $settings.vsixFile `
-pipelinename $workflowName `
- -imageName "" `
+ -imageName $imageName `
-memoryLimit $settings.memoryLimit `
-baseFolder $projectFolder `
-sharedFolder $sharedFolder `
diff --git a/RELEASENOTES.md b/RELEASENOTES.md
index 1daebdd44..20dd0a029 100644
--- a/RELEASENOTES.md
+++ b/RELEASENOTES.md
@@ -2,6 +2,11 @@
The starter Azure Data Explorer dashboard now includes dedicated views for workflow reliability, run exploration, test quality, workflow duration, runner efficiency, and AL-Go maintenance. It also provides repository, workflow, branch, and repository-type filtering, clearer empty states, and repository-level runtime supportability information.
+### Local development environments use cacheImageName
+
+localDevEnv now passes the configured cacheImageName to Run-AlPipeline, allowing BcContainerHelper to reuse artifact-specific images.
+To retain the previous behavior, set `cacheImageName` to an empty string in .AL-Go/localDevEnv.settings.json.
+
## v9.2
### New `doNotPerformUpgrade` setting
diff --git a/Scenarios/settings.md b/Scenarios/settings.md
index c0118f92d..ddbc694ce 100644
--- a/Scenarios/settings.md
+++ b/Scenarios/settings.md
@@ -126,7 +126,7 @@ The repository settings are only read from the repository settings file (.github
| alwaysBuildAllProjects (**deprecated**) | This setting only makes sense if the repository is setup for multiple projects.
Standard behavior of the CI/CD workflow is to only build the projects, in which files have changes when running the workflow due to a push or a pull request | false |
| fullBuildPatterns | Use this setting to list important files and folders. Changes to any of these files and folders would trigger a full Pull Request build (all AL-Go projects will be built).
*Examples*:
1. Specifying `fullBuildPatterns` as `[ "Build/*" ]` means that any changes from a PR to the `Build` folder would trigger a full build.
2. Specifying `fullBuildPatterns` as `[ "*" ]` means that any changes from a PR would trigger a full build and it is equivalent to setting `alwaysBuildAllProjects` to `true`. | [ ] |
| skipUpgrade | This setting is used to signal to the pipeline to NOT run upgrade and ignore previous releases of the app. | false |
-| cacheImageName | When using self-hosted runners, cacheImageName specifies the prefix for the docker image created for increased performance | my |
+| cacheImageName | When using self-hosted runners or localDevEnv, cacheImageName specifies the prefix for the docker image created for increased performance. Set cacheImageName in `localDevEnv.settings.json` to an empty string to retain the previous local-development behavior. | my |
| cacheKeepDays | When using self-hosted runners, cacheKeepDays specifies the number of days docker image are cached before cleaned up when running the next pipeline.
Note that setting cacheKeepDays to 0 will flush the cache before every build and will cause all other running builds using agents on the same host to fail. | 3 |
| assignPremiumPlan | Setting assignPremiumPlan to true in your project setting file, causes the build container to be created with the AssignPremiumPlan set. This causes the auto-created user to have Premium Plan enabled. This setting is needed if your tests require premium plan enabled. | false |
| enableTaskScheduler | Setting enableTaskScheduler to true in your project setting file, causes the build container to be created with the Task Scheduler running. | false |