Fix LT-22531: Crash occurs in Find and Replace after switching views #3207
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Flex CI | |
| on: | |
| push: | |
| branches: ["release/**", "main", "feature/PubSub"] | |
| pull_request: | |
| branches: ["release/**", "main", "feature/PubSub"] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| checks: write | |
| pull-requests: write | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| debug_build_and_test: | |
| name: Build Debug and run tests | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout Files | |
| uses: actions/checkout@v6 | |
| id: checkout | |
| - name: Build with tests | |
| id: build | |
| shell: powershell | |
| run: | | |
| .\build.ps1 -Configuration Debug -BuildTests | |
| if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE } | |
| - name: Run tests | |
| id: test | |
| shell: powershell | |
| run: | | |
| .\test.ps1 -Configuration Debug -NoBuild -TestFilter 'TestCategory!=LongRunning&TestCategory!=ByHand&TestCategory!=SmokeTest&TestCategory!=DesktopRequired' | |
| if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE } | |
| - name: Summarize native test results | |
| if: ${{ always() }} | |
| shell: powershell | |
| run: | | |
| .\Build\Agent\Summarize-NativeTestResults.ps1 -Configuration Debug | |
| - name: Collect render comparison artifacts | |
| id: render_artifacts | |
| if: ${{ !cancelled() && failure() }} | |
| shell: pwsh | |
| run: .\Build\Agent\Collect-RenderArtifacts.ps1 -SearchRoot . -OutputDirectory .\Output\RenderArtifacts | |
| - name: Upload render comparison artifacts | |
| id: upload_render_artifacts | |
| if: ${{ !cancelled() && steps.render_artifacts.outputs.has_artifacts == 'true' }} | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: render-comparison-artifacts-${{ github.run_id }}-${{ github.run_attempt }} | |
| path: Output/RenderArtifacts | |
| retention-days: 30 | |
| if-no-files-found: error | |
| - name: Summarize render comparison artifacts | |
| if: ${{ github.event_name == 'pull_request' && !cancelled() && (success() || steps.render_artifacts.outputs.has_artifacts == 'true') }} | |
| shell: pwsh | |
| continue-on-error: true | |
| env: | |
| ARTIFACT_URL: ${{ steps.upload_render_artifacts.outputs.artifact-url }} | |
| FAILURE_COUNT: ${{ steps.render_artifacts.outputs.failure_count }} | |
| HAS_ARTIFACTS: ${{ steps.render_artifacts.outputs.has_artifacts }} | |
| run: .\Build\Agent\Report-RenderArtifacts.ps1 -SkipComment | |
| - name: Build render comparison failure comment | |
| id: render_failure_comment | |
| if: ${{ github.event_name == 'pull_request' && !cancelled() && steps.render_artifacts.outputs.has_artifacts == 'true' }} | |
| shell: pwsh | |
| env: | |
| ARTIFACT_URL: ${{ steps.upload_render_artifacts.outputs.artifact-url }} | |
| FAILURE_COUNT: ${{ steps.render_artifacts.outputs.failure_count }} | |
| HAS_ARTIFACTS: ${{ steps.render_artifacts.outputs.has_artifacts }} | |
| PULL_REQUEST_NUMBER: ${{ github.event.pull_request.number }} | |
| run: .\Build\Agent\Build-RenderArtifactComment.ps1 | |
| - name: Update render comparison PR comment for failures | |
| if: ${{ github.event_name == 'pull_request' && !cancelled() && steps.render_artifacts.outputs.has_artifacts == 'true' }} | |
| uses: marocchino/sticky-pull-request-comment@0ea0beb66eb9baf113663a64ec522f60e49231c0 # v3.0.4 | |
| with: | |
| header: fieldworks-render-comparison-artifacts | |
| path: ${{ steps.render_failure_comment.outputs.comment_path }} | |
| skip_unchanged: true | |
| - name: Build render comparison resolved comment | |
| id: render_clean_comment | |
| if: ${{ github.event_name == 'pull_request' && !cancelled() && success() }} | |
| shell: pwsh | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| HAS_ARTIFACTS: false | |
| PULL_REQUEST_NUMBER: ${{ github.event.pull_request.number }} | |
| run: .\Build\Agent\Build-RenderArtifactComment.ps1 | |
| - name: Update render comparison PR comment for clean run | |
| if: ${{ github.event_name == 'pull_request' && !cancelled() && success() }} | |
| uses: marocchino/sticky-pull-request-comment@0ea0beb66eb9baf113663a64ec522f60e49231c0 # v3.0.4 | |
| with: | |
| header: fieldworks-render-comparison-artifacts | |
| only_update: true | |
| path: ${{ steps.render_clean_comment.outputs.comment_path }} | |
| skip_unchanged: true | |
| - name: Upload TRX test results (managed) | |
| if: ${{ !cancelled() }} | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: trx-results | |
| path: | | |
| **/*.trx | |
| if-no-files-found: warn | |
| - uses: actions/upload-artifact@v7 | |
| if: ${{ !cancelled() && failure() }} | |
| with: | |
| name: build-logs | |
| path: | | |
| ./*.log | |
| ./Output/**/*.log | |
| ./Output/**/*.log.stderr | |
| publish_test_results: | |
| name: Publish Test Results | |
| if: ${{ !cancelled() }} | |
| needs: debug_build_and_test | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| issues: read | |
| checks: write | |
| pull-requests: write | |
| steps: | |
| - name: Download TRX artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: trx-results | |
| path: test-results | |
| - name: Publish Test Results | |
| uses: EnricoMi/publish-unit-test-result-action@c950f6fb443cb5af20a377fd0dfaa78838901040 | |
| with: | |
| files: 'test-results/**/*.trx' | |
| check_name: NUnit Tests | |
| comment_mode: ${{ github.event_name == 'pull_request' && 'always' || 'off' }} | |
| job_summary: true | |
| fail_on: test failures |