11===============================================================================
22PROJECT EXPORT
3- Generated: Tue Jan 27 10:36:14 AM EST 2026
3+ Generated: Tue Jan 27 01:01:42 PM EST 2026
44Project Path: /home/kushal/src/dotnet/MyBlog
55===============================================================================
66
@@ -646,8 +646,8 @@ echo ""
646646
647647================================================================================
648648FILE: .github/workflows/build-deploy.yml
649- SIZE: 4.47 KB
650- MODIFIED: 2026-01-26 21:59:40
649+ SIZE: 5.09 KB
650+ MODIFIED: 2026-01-27 12:56:00
651651================================================================================
652652
653653name: Build, Test, and Deploy
@@ -696,35 +696,42 @@ jobs:
696696 with:
697697 dotnet-version: '10.0.x'
698698
699- - name: Restore E2E dependencies
700- run: dotnet restore src/MyBlog.E2E/MyBlog.E2E.csproj
699+ - name: Restore dependencies
700+ run: dotnet restore src/MyBlog.slnx
701701
702- - name: Build E2E project
703- run: dotnet build src/MyBlog.E2E/MyBlog.E2E.csproj -c Release --no-restore
702+ - name: Build solution
703+ run: dotnet build src/MyBlog.slnx -c Release --no-restore
704704
705705 - name: Install Playwright browsers
706706 run: |
707707 pwsh src/MyBlog.E2E/bin/Release/net10.0/playwright.ps1 install chromium --with-deps
708708
709- - name: Build and run MyBlog
709+ - name: Start MyBlog application
710710 run: |
711- dotnet build src/MyBlog.Web/MyBlog.Web.csproj -c Release
712- dotnet run --project src/MyBlog.Web/MyBlog.Web.csproj -c Release --no-build &
713- sleep 15
711+ dotnet run --project src/MyBlog.Web/MyBlog.Web.csproj -c Release --no-build > app.log 2>&1 &
712+ echo $! > app.pid
714713 env:
715714 ASPNETCORE_URLS: http://localhost:5000
716715 ASPNETCORE_ENVIRONMENT: Development
717716 Authentication__DefaultAdminPassword: ChangeMe123!
718717
719- - name: Wait for application to start
718+ - name: Wait for application to be ready
720719 run: |
721- for i in {1..30}; do
720+ echo "Waiting for application to start..."
721+ for i in {1..60}; do
722722 if curl -sf http://localhost:5000/ > /dev/null 2>&1; then
723- echo "Application is ready"
723+ echo "Application is ready!"
724+ curl -v http://localhost:5000/ 2>&1 | head -20
724725 break
725726 fi
726- echo "Waiting for application ... ($i/30) "
727+ echo "Attempt $i/60: Application not ready yet ..."
727728 sleep 2
729+ if [ $i -eq 60 ]; then
730+ echo "Application failed to start within timeout"
731+ echo "Application logs:"
732+ cat app.log || echo "No logs available"
733+ exit 1
734+ fi
728735 done
729736
730737 - name: Run E2E tests
@@ -733,6 +740,19 @@ jobs:
733740 MYBLOG_BASE_URL: http://localhost:5000
734741 PLAYWRIGHT_HEADLESS: true
735742
743+ - name: Stop application
744+ if: always()
745+ run: |
746+ if [ -f app.pid ]; then
747+ kill $(cat app.pid) || true
748+ fi
749+
750+ - name: Show application logs on failure
751+ if: failure()
752+ run: |
753+ echo "=== Application Logs ==="
754+ cat app.log || echo "No logs available"
755+
736756 - name: Upload test results
737757 uses: actions/upload-artifact@v4
738758 if: always()
@@ -741,10 +761,11 @@ jobs:
741761 path: |
742762 src/MyBlog.E2E/TestResults/
743763 test-results/
764+ app.log
744765 retention-days: 7
745766
746767 deploy:
747- needs: [build-test]
768+ needs: [build-test, e2e-tests ]
748769 if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' || github.ref == 'refs/heads/develop'
749770 runs-on: windows-latest
750771
@@ -13698,7 +13719,7 @@ window.themeManager = {
1369813719
1369913720
1370013721===============================================================================
13701- EXPORT COMPLETED: Tue Jan 27 10:36:15 AM EST 2026
13722+ EXPORT COMPLETED: Tue Jan 27 01:01:43 PM EST 2026
1370213723Total Files Found: 115
1370313724Files Exported: 115
1370413725Files Skipped: 0 (binary or large files)
0 commit comments