microsoft / microsoft/BCApps

[Contribution Process Bug]: NewDevEnv isn't working - Outdated cache for BaseApp

Open
#9,610 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Contribution-Bug Ownership: Manual Ownership: Needs Review Platform Team: Other
Dominant language
AL
Stars
683
Forks
459
Avg merge
3d 26m
Merged PRs (30d)
633

Description

Describe the issue

I'm not able to create a new docker for BaseApp Developement.
The problem is that some outdated cache is used for compiling the BaseApp

The process fails with


C:\Users\xxx\source\AL\Microsoft\BCApps\src\Layers\W1\Tests\ApplicationTestLibrary\LibraryManufacturing.Codeunit.al(162,39): warning AL0432: Report 'Calculate Subcontracts' is marked for removal. Reason
: Will be replaced by Report "Subc. Calculate Subcontracts" in the Subcontracting App.. Tag: 28.0.
C:\Users\xxx\source\AL\Microsoft\BCApps\src\Layers\W1\Tests\ApplicationTestLibrary\LibraryManufacturing.Codeunit.al(194,39): warning AL0432: Report 'Calculate Subcontracts' is marked for removal. Reason
: Will be replaced by Report "Subc. Calculate Subcontracts" in the Subcontracting App.. Tag: 28.0.
C:\Users\xxx\source\AL\Microsoft\BCApps\src\Layers\W1\Tests\ApplicationTestLibrary\LibraryJob.Codeunit.al(76,126): error AL0185: Table 'Job Assigned Resource' is missing

Compilation ended at '20:21:13.314'.

Compile-AppWithBcCompilerFolder Telemetry Correlation Id: 2dbf2503-1993-423f-9444-fee272a05b1a
Error building apps: App generation failed
Removing compiler folder C:\Users\xxx\source\AL\Microsoft\BCApps\artifacts\baseapp\CompilerFolder
Container baseapp created successfully. You can access the webclient by going to http://baseapp/BC/ in your browser
Skipped building apps.
Skipped publishing apps.
App generation failed
In C:\Program Files\WindowsPowerShell\Modules\BCContainerHelper\6.1.15\CompilerFolderHandling\Compile-AppWithBcCompilerFolder.ps1:555 Zeichen:13
+             throw "App generation failed"
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (App generation failed:String) [], RuntimeException
    + FullyQualifiedErrorId : App generation failed
Expected behavior

it should be possible to create a new docker for the BaseApp with NewDevEnv.ps1

Steps to reproduce

Clone BCApps
then try to create a new docker for layer W1

$containerName = "baseapp"
cd "C:\Users\xxx\source\AL\Microsoft\BCApps\"
.\build\scripts\DevEnv\NewDevEnv.ps1 -containerName $containerName -projectPaths '.\src\Layers\W1\*'
Additional context

There should be a way to disable the using of the cache.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with build/scripts/DevEnv/NewDevEnv.ps1 and reproduce the failure using the W1 projectPaths command shown in the issue. Trace how the BaseApp compiler cache is selected and compare that with the missing 'Job Assigned Resource' error. Done means NewDevEnv can create the BaseApp container without using an outdated cache, with a documented way to disable cache use.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, powershell
Domain
build-system, devops, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.