Skip to content

[Failing test]: Aspire.Cli.EndToEnd.Tests.JsReactTemplateTests.CreateAndRunJsReactProject #17181

@davidfowl

Description

@davidfowl

Build information

Build: https://github.com/microsoft/aspire/actions/runs/25973389396
Build error leg or test failing: Aspire.Cli.EndToEnd.Tests.JsReactTemplateTests.CreateAndRunJsReactProject
Logs: Tests / Cli.EndToEnd-JsReactTemplateTests / Cli.EndToEnd-JsReactTemplateTests (ubuntu-latest)
Artifact: All-TestResults

Fill in the error message template

Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "Hex1b.Automation.Hex1bAutomationException : Step 54 of 54 failed \u2014 WaitUntil(\u0022success prompt [11 OK] $\u0022)",
  "ErrorPattern": "",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Error details

Error details (172 lines)
Error Message: Hex1b.Automation.Hex1bAutomationException : Step 54 of 54 failed — WaitUntil("success prompt [11 OK] $")
  Timed out after 00:08:20 waiting for: success prompt [11 OK] $
  at Hex1bAutomatorTestHelpers.cs:28

Completed steps (53 of 54):
  [1] WaitUntilText("# ") — 4557ms ✓ (CliE2EAutomatorHelpers.cs:37)
  [2] Wait(500ms) — 502ms ✓ (CliE2EAutomatorHelpers.cs:39)
  [3] Type("CMDCOUNT=0; PROMPT_COMMAND=...") — 8ms ✓ (CliE2EAutomatorHelpers.cs:43)
  [4] Key(Enter) — 2ms ✓ (CliE2EAutomatorHelpers.cs:44)
  [5] WaitUntil("success prompt [1 OK] $") — 12ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [6] Type("umask 000") — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:294)
  [7] Key(Enter) — 3ms ✓ (Hex1bAutomatorTestHelpers.cs:295)
  [8] WaitUntil("success prompt [2 OK] $") — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [9] Type("export ASPIRE_PLAYGROUND=tr...") — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:294)
  [10] Key(Enter) — 2ms ✓ (Hex1bAutomatorTestHelpers.cs:295)
  [11] WaitUntil("success prompt [3 OK] $") — 258ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [12] Type("cd '/workspace/39cee2df-741...") — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:294)
  [13] Key(Enter) — 2ms ✓ (Hex1bAutomatorTestHelpers.cs:295)
  [14] WaitUntil("success prompt [4 OK] $") — 252ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [15] Type("export ASPIRE_E2E_WORKSPACE...") — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:294)
  [16] Key(Enter) — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:295)
  [17] WaitUntil("success prompt [5 OK] $") — 253ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [18] Type("trap 'if [ -n "$ASPIRE_E2E_...") — 8ms ✓ (Hex1bAutomatorTestHelpers.cs:294)
  [19] Key(Enter) — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:295)
  [20] WaitUntil("success prompt [6 OK] $") — 252ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [21] Type("/opt/aspire-scripts/get-asp...") — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:308)
  [22] Key(Enter) — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:309)
  [23] WaitUntil("success prompt [7 OK] $ (fail-fast on error)") — 2015ms ✓ (Hex1bAutomatorTestHelpers.cs:252)
  [24] Type("export PATH=~/.aspire/bin:~...") — 1ms ✓ (Hex1bAutomatorTestHelpers.cs:294)
  [25] Key(Enter) — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:295)
  [26] WaitUntil("success prompt [8 OK] $") — 255ms ✓ (Hex1bAutomatorTestHelpers.cs:28)
  [27] Type("VER=$(aspire --version 2>/d...") — 4ms ✓ (CliE2EAutomatorHelpers.cs:469)
  [28] Key(Enter) — 0ms ✓ (CliE2EAutomatorHelpers.cs:475)
  [29] WaitUntil("CLI version verification") — 253ms ✓ (CliE2EAutomatorHelpers.cs:478)
  [30] WaitUntil("any prompt [9 OK/ERR] $") — 756ms ✓ (Hex1bAutomatorTestHelpers.cs:50)
  [31] Type("aspire new") — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:522)
  [32] Key(Enter) — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:523)
  [33] WaitUntil("template selection list (> Starter App)") — 2263ms ✓ (Hex1bAutomatorTestHelpers.cs:524)
  [34] Key(DownArrow) — 2ms ✓ (Hex1bAutomatorTestHelpers.cs:537)
  [35] WaitUntil("JS React template selected") — 253ms ✓ (Hex1bAutomatorTestHelpers.cs:538)
  [36] Key(Enter) — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:542)
  [37] WaitUntil("project name prompt") — 252ms ✓ (Hex1bAutomatorTestHelpers.cs:607)
  [38] Type("AspireJsReactApp") — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:611)
  [39] Key(Enter) — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:612)
  [40] WaitUntil("output path prompt") — 252ms ✓ (Hex1bAutomatorTestHelpers.cs:615)
  [41] Key(Enter) — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:619)
  [42] WaitUntil("URLs prompt") — 1507ms ✓ (Hex1bAutomatorTestHelpers.cs:622)
  [43] Key(Enter) — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:626)
  [44] WaitUntil("Redis cache prompt") — 254ms ✓ (Hex1bAutomatorTestHelpers.cs:631)
  [45] Type("n") — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:638)
  [46] WaitUntil("agent init prompt, success prompt [10 OK] $, or error prompt [10 ERR:*] $") — 6535ms ✓ (Hex1bAutomatorTestHelpers.cs:464)
  [47] Wait(500ms) — 500ms ✓ (Hex1bAutomatorTestHelpers.cs:497)
  [48] Type("n") — 0ms ✓ (Hex1bAutomatorTestHelpers.cs:498)
  [49] WaitUntil("success prompt [10 OK] $ (fail-fast on error)") — 251ms ✓ (Hex1bAutomatorTestHelpers.cs:252)
  [50] Type("aspire run") — 0ms ✓ (JsReactTemplateTests.cs:39)
  [51] Key(Enter) — 1ms ✓ (JsReactTemplateTests.cs:40)
  [52] WaitUntil("Press CTRL+C message (aspire run started)") — 0:15.836 ✓ (JsReactTemplateTests.cs:43)
  [53] Key(Ctrl+C) — 1ms ✓ (JsReactTemplateTests.cs:54)
  [54] WaitUntil("success prompt [11 OK] $") — FAILED after 8:20.028

Total elapsed: 8:57.348

Terminal snapshot at failure (160x48, cursor at 15,47, normal screen):
│  ██   ██ ▀▀▀▀▀██ ██▀▀▀   ██ ██▀▀██  ██        │                                                                                                               
│  ██   ██ ███████ ██      ██ ██   ██ ██████    │                                                                                                               
│  ▀▀   ▀▀ ▀▀▀▀▀▀▀ ▀▀      ▀▀ ▀▀   ▀▀ ▀▀▀▀▀▀    │                                                                                                               
│    CLI — version 13.4.0-pr.17178.g099cb916    │                                                                                                               
│                                               │                                                                                                               
╰───────────────────────────────────────────────╯                                                                                                               
                                                                                                                                                                
                                                                                                                                                                
Telemetry                                                                                                                                                       
---------                                                                                                                                                       
                                                                                                                                                                
The Aspire CLI collects usage data. It is collected by Microsoft and is used to help us improve your experience. You can opt out of telemetry by setting the    
ASPIRE_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your preferred shell.                                                                   
                                                                                                                                                                
Read more about Aspire CLI telemetry: https://aka.ms/aspire/cli-telemetry                                                                                       
                                                                                                                                                                
Select a template: Starter App (ASP.NET Core/React, C# AppHost)                                                                                                 
Enter the project name (aspire-ts-cs-starter): AspireJsReactApp                                                                                                 
Enter the output path (./AspireJsReactApp): ./AspireJsReactApp                                                                                                  
Use *.dev.localhost URLs [y/N]: N                                                                                                                               
Use Redis Cache [Y/n]: n                                                                                                                                        
\ud83d\udce6 Using project templates version: 13.4.0-pr.17178.g099cb916                                                                                                   
⚠️ Developer certificates may not be fully trusted (trust exit code was: PartiallyFailedToTrustTheCertificate).                                                 
\ud83d\udce6 Created or updated NuGet.config in the project directory with required package sources.                                                                      
✅ Project created successfully in /workspace/39cee2df-7417-4204-bef8-234a1fe86cdd/AspireJsReactApp.                                                            
                                                                                                                                                                
Would you like to configure AI agent environments for this project? [Y/n]: n                                                                                    
[10 OK] $ aspire run                                                                                                                                            
AspireJsReactApp/AspireJsReactApp.AppHost/AspireJsReactApp.AppHost.csproj                                                                                       
⚠️ Developer certificates may not be fully trusted (trust exit code was: PartiallyFailedToTrustTheCertificate).                                                 
                                                                                                                                                                
     AppHost:  AspireJsReactApp/AspireJsReactApp.AppHost/AspireJsReactApp.AppHost.csproj                                                                        
                                                                                                                                                                
   Dashboard:  https://localhost:17079/login?t=657abc902acfc98b6366803785056829                                                                                 
                                                                                                                                                                
        Logs:  /root/.aspire/logs/cli_20260516T214244_b5ebd7d8.log                                                                                              
                                                                                                                                                                
               Press CTRL+C to stop the AppHost and exit.                                                                                                       
^C                                                                                                                                                              
\ud83d\uded1 Stopping Aspire.                                                                                                                                             
Unhandled exception. System.ObjectDisposedException: The CancellationTokenSource has been disposed.                                                             
   at Aspire.Cli.Program.<>c__DisplayClass18_0.<Main>b__0(Object, ConsoleCancelEventArgs) + 0x40                                                                
   at System.Console.HandlePosixSignal(PosixSignalContext) + 0x4f                                                                                               
   at System.Runtime.InteropServices.PosixSignalRegistration.<OnPosixSignal>g__HandleSignal|10_0(Object) + 0x7c                                                 
   at System.Threading.Thread.StartThread(IntPtr) + 0x158                                                                                                       
   at System.Threading.Thread.ThreadEntryPoint(IntPtr) + 0x19                                                                                                   
Aborted (core dumped)                                                                                                                                           
[11 ERR:134] $                                                                                                                                                  
---- Hex1b.Automation.WaitUntilTimeoutException : WaitUntil timed out after 00:08:20 waiting for: success prompt [11 OK] $
  at Hex1bTerminalAutomator.cs:110
Terminal (160x48, cursor at 15,47, normal screen):
│  ██   ██ ▀▀▀▀▀██ ██▀▀▀   ██ ██▀▀██  ██        │                                                                                                               
│  ██   ██ ███████ ██      ██ ██   ██ ██████    │                                                                                                               
│  ▀▀   ▀▀ ▀▀▀▀▀▀▀ ▀▀      ▀▀ ▀▀   ▀▀ ▀▀▀▀▀▀    │                                                                                                               
│    CLI — version 13.4.0-pr.17178.g099cb916    │                                                                                                               
│                                               │                                                                                                               
╰───────────────────────────────────────────────╯                                                                                                               
                                                                                                                                                                
                                                                                                                                                                
Telemetry                                                                                                                                                       
---------                                                                                                                                                       
                                                                                                                                                                
The Aspire CLI collects usage data. It is collected by Microsoft and is used to help us improve your experience. You can opt out of telemetry by setting the    
ASPIRE_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your preferred shell.                                                                   
                                                                                                                                                                
Read more about Aspire CLI telemetry: https://aka.ms/aspire/cli-telemetry                                                                                       
                                                                                                                                                                
Select a template: Starter App (ASP.NET Core/React, C# AppHost)                                                                                                 
Enter the project name (aspire-ts-cs-starter): AspireJsReactApp                                                                                                 
Enter the output path (./AspireJsReactApp): ./AspireJsReactApp                                                                                                  
Use *.dev.localhost URLs [y/N]: N                                                                                                                               
Use Redis Cache [Y/n]: n                                                                                                                                        
\ud83d\udce6 Using project templates version: 13.4.0-pr.17178.g099cb916                                                                                                   
⚠️ Developer certificates may not be fully trusted (trust exit code was: PartiallyFailedToTrustTheCertificate).                                                 
\ud83d\udce6 Created or updated NuGet.config in the project directory with required package sources.                                                                      
✅ Project created successfully in /workspace/39cee2df-7417-4204-bef8-234a1fe86cdd/AspireJsReactApp.                                                            
                                                                                                                                                                
Would you like to configure AI agent environments for this project? [Y/n]: n                                                                                    
[10 OK] $ aspire run                                                                                                                                            
AspireJsReactApp/AspireJsReactApp.AppHost/AspireJsReactApp.AppHost.csproj                                                                                       
⚠️ Developer certificates may not be fully trusted (trust exit code was: PartiallyFailedToTrustTheCertificate).                                                 
                                                                                                                                                                
     AppHost:  AspireJsReactApp/AspireJsReactApp.AppHost/AspireJsReactApp.AppHost.csproj                                                                        
                                                                                                                                                                
   Dashboard:  https://localhost:17079/login?t=657abc902acfc98b6366803785056829                                                                                 
                                                                                                                                                                
        Logs:  /root/.aspire/logs/cli_20260516T214244_b5ebd7d8.log                                                                                              
                                                                                                                                                                
               Press CTRL+C to stop the AppHost and exit.                                                                                                       
^C                                                                                                                                                              
\ud83d\uded1 Stopping Aspire.                                                                                                                                             
Unhandled exception. System.ObjectDisposedException: The CancellationTokenSource has been disposed.                                                             
   at Aspire.Cli.Program.<>c__DisplayClass18_0.<Main>b__0(Object, ConsoleCancelEventArgs) + 0x40                                                                
   at System.Console.HandlePosixSignal(PosixSignalContext) + 0x4f                                                                                               
   at System.Runtime.InteropServices.PosixSignalRegistration.<OnPosixSignal>g__HandleSignal|10_0(Object) + 0x7c                                                 
   at System.Threading.Thread.StartThread(IntPtr) + 0x158                                                                                                       
   at System.Threading.Thread.ThreadEntryPoint(IntPtr) + 0x19                                                                                                   
Aborted (core dumped)                                                                                                                                           
[11 ERR:134] $
Stack Trace:
   at Hex1b.Automation.Hex1bTerminalAutomator.RunAndRecordAsync(Hex1bTerminalInputSequence sequence, String description, CancellationToken ct, String callerFilePath, Int32 callerLineNumber) in /home/runner/work/hex1b/hex1b/src/Hex1b/Automation/Hex1bTerminalAutomator.cs:line 665
   at Hex1b.Automation.Hex1bTerminalAutomator.WaitUntilAsync(Func`2 predicate, Nullable`1 timeout, String description, String predicateExpression, String callerFilePath, Int32 callerLineNumber) in /home/runner/work/hex1b/hex1b/src/Hex1b/Automation/Hex1bTerminalAutomator.cs:line 113
   at Aspire.Tests.Shared.Hex1bAutomatorTestHelpers.WaitForSuccessPromptAsync(Hex1bTerminalAutomator auto, SequenceCounter counter, Nullable`1 timeout) in /_/tests/Shared/Hex1bAutomatorTestHelpers.cs:line 28
   at Aspire.Cli.EndToEnd.Tests.JsReactTemplateTests.CreateAndRunJsReactProject() in /_/tests/Aspire.Cli.EndToEnd.Tests/JsReactTemplateTests.cs:line 55
--- End of stack trace from previous location ---
----- Inner Stack Trace -----
   at Hex1b.Automation.WaitUntilStep.ExecuteAsync(Hex1bTerminal terminal, Hex1bTerminalInputSequenceOptions options, CancellationToken ct) in /home/runner/work/hex1b/hex1b/src/Hex1b/Automation/WaitUntilStep.cs:line 39
   at Hex1b.Automation.Hex1bTerminalInputSequence.ApplyAsync(Hex1bTerminal terminal, CancellationToken ct) in /home/runner/work/hex1b/hex1b/src/Hex1b/Automation/Hex1bTerminalInputSequence.cs:line 41
   at Hex1b.Automation.Hex1bTerminalAutomator.RunAndRecordAsync(Hex1bTerminalInputSequence sequence, String description, CancellationToken ct, String callerFilePath, Int32 callerLineNumber) in /home/runner/work/hex1b/hex1b/src/Hex1b/Automation/Hex1bTerminalAutomator.cs:line 652
Standard Output
CLI install strategy detection starting...
  → Selected: LocalArchive (ASPIRE_E2E_CLI_ARCHIVE_DIR=/home/runner/work/aspire/aspire/cli-archives)
Temporary workspace created at: /tmp/Aspire.Cli.Tests/TemporaryWorkspaces/39cee2df-7417-4204-bef8-234a1fe86cdd
Creating Docker test terminal:
  Test name:      CreateAndRunJsReactProject
  Strategy:       LocalArchive (/home/runner/work/aspire/aspire/cli-archives) [expected=13.4.0-pr.17178.g099cb916]
  Expected ver:   13.4.0-pr.17178.g099cb916
  Variant:        DotNet
  Dockerfile:     (prebuilt image)
  Image:          aspire-cli-e2e-dotnet:prebuilt
  Workspace:      /tmp/Aspire.Cli.Tests/TemporaryWorkspaces/39cee2df-7417-4204-bef8-234a1fe86cdd
  Docker socket:  True
  Dimensions:     160x48
  Recording:      /home/runner/work/aspire/aspire/testresults/recordings/CreateAndRunJsReactProject.cast

Metadata

Metadata

Assignees

No one assigned

    Labels

    failing-testneeds-area-labelAn area label is needed to ensure this gets routed to the appropriate area ownerstriage:bot-seenAspire triage bot has seen this issue

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions