Refresh cell footer time when cell scrolls into view #11991
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: "Test: PR" | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| branches: | |
| - main | |
| - "prerelease/**" | |
| - "release/**" | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| pr-tags: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| tags: ${{ steps.pr-tags.outputs.tags }} | |
| win_tag_found: ${{ steps.pr-tags.outputs.win_tag_found }} | |
| web_tag_found: ${{ steps.pr-tags.outputs.web_tag_found }} | |
| rhel_electron_tag_found: ${{ steps.pr-tags.outputs.rhel_electron_tag_found }} | |
| rhel_web_tag_found: ${{ steps.pr-tags.outputs.rhel_web_tag_found }} | |
| suse_electron_tag_found: ${{ steps.pr-tags.outputs.suse_electron_tag_found }} | |
| suse_web_tag_found: ${{ steps.pr-tags.outputs.suse_web_tag_found }} | |
| sles_electron_tag_found: ${{ steps.pr-tags.outputs.sles_electron_tag_found }} | |
| sles_web_tag_found: ${{ steps.pr-tags.outputs.sles_web_tag_found }} | |
| debian_electron_tag_found: ${{ steps.pr-tags.outputs.debian_electron_tag_found }} | |
| debian_web_tag_found: ${{ steps.pr-tags.outputs.debian_web_tag_found }} | |
| pyrefly_tag_found: ${{ steps.pr-tags.outputs.pyrefly_tag_found }} | |
| workbench_tag_found: ${{ steps.pr-tags.outputs.workbench_tag_found }} | |
| workbench_stable_tag_found: ${{ steps.pr-tags.outputs.workbench_stable_tag_found }} | |
| jupyter_tag_found: ${{ steps.pr-tags.outputs.jupyter_tag_found }} | |
| remote_ssh_tag_found: ${{ steps.pr-tags.outputs.remote_ssh_tag_found }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Parse Tags from PR Body | |
| id: pr-tags | |
| run: bash scripts/pr-tags-parse.sh | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| GITHUB_REPOSITORY: ${{ github.repository }} | |
| GITHUB_EVENT_PULL_REQUEST_NUMBER: ${{ github.event.pull_request.number }} | |
| e2e-ubuntu-electron: | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-ubuntu.yml | |
| needs: pr-tags | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "electron" | |
| install_undetectable_interpreters: false | |
| install_license: false | |
| upload_logs: false | |
| workers: 2 | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-windows-electron: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.win_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-windows-run.yml | |
| with: | |
| save_cache: true | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "electron-win" | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-ubuntu-browser: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.web_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-ubuntu.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "chromium" | |
| project: "e2e-chromium" | |
| install_undetectable_interpreters: false | |
| install_license: true | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-rhel-electron: | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-rhel.yml | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.rhel_electron_tag_found == 'true' }} | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "electron (RHEL)" | |
| install_undetectable_interpreters: false | |
| install_license: false | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-rhel-chromium: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.rhel_web_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-rhel.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "chromium (RHEL)" | |
| project: "e2e-chromium" | |
| install_undetectable_interpreters: false | |
| install_license: true | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-suse-electron: | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-suse.yml | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.suse_electron_tag_found == 'true' }} | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "electron (SUSE)" | |
| install_undetectable_interpreters: false | |
| install_license: false | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-suse-chromium: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.suse_web_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-suse.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "chromium (SUSE)" | |
| project: "e2e-chromium" | |
| install_undetectable_interpreters: false | |
| install_license: true | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-sles-electron: | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-sles.yml | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.sles_electron_tag_found == 'true' }} | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "electron (SLES)" | |
| install_undetectable_interpreters: false | |
| install_license: false | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-sles-chromium: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.sles_web_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-sles.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "chromium (SLES)" | |
| project: "e2e-chromium" | |
| install_undetectable_interpreters: false | |
| install_license: true | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-debian-electron: | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-debian.yml | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.debian_electron_tag_found == 'true' }} | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "electron (Debian)" | |
| install_undetectable_interpreters: false | |
| install_license: false | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-debian-chromium: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.debian_web_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-debian.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "chromium (Debian)" | |
| project: "e2e-chromium" | |
| install_undetectable_interpreters: false | |
| install_license: true | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-pyrefly: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.pyrefly_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-pyrefly.yml | |
| secrets: inherit | |
| build-workbench: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.workbench_tag_found == 'true' || needs.pr-tags.outputs.workbench_stable_tag_found == 'true' }} | |
| name: build | |
| uses: ./.github/workflows/build-workbench-linux.yml | |
| secrets: inherit | |
| e2e-workbench: | |
| needs: [pr-tags, build-workbench] | |
| if: ${{ needs.pr-tags.outputs.workbench_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-workbench-ubuntu.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "workbench" | |
| install_license: false | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| e2e-workbench-stable: | |
| needs: [pr-tags, build-workbench] | |
| if: ${{ needs.pr-tags.outputs.workbench_stable_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-workbench-ubuntu.yml | |
| with: | |
| grep: "@:workbench" | |
| display_name: "workbench-stable" | |
| install_license: false | |
| upload_logs: false | |
| allow_soft_fail: false | |
| install_mode: "ci-stable" | |
| secrets: inherit | |
| build-jupyter: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.jupyter_tag_found == 'true' }} | |
| name: build | |
| uses: ./.github/workflows/build-jupyter-linux.yml | |
| secrets: inherit | |
| e2e-jupyter: | |
| needs: [pr-tags, build-jupyter] | |
| if: ${{ needs.pr-tags.outputs.jupyter_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-jupyter-ubuntu.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "jupyter" | |
| install_license: true | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| build-remote-ssh: | |
| needs: pr-tags | |
| if: ${{ needs.pr-tags.outputs.remote_ssh_tag_found == 'true' }} | |
| name: build | |
| uses: ./.github/workflows/build-remote-ssh-linux.yml | |
| secrets: inherit | |
| e2e-remote-ssh: | |
| needs: [pr-tags, build-remote-ssh] | |
| if: ${{ needs.pr-tags.outputs.remote_ssh_tag_found == 'true' }} | |
| name: e2e | |
| uses: ./.github/workflows/test-e2e-remote-ssh-ubuntu.yml | |
| with: | |
| grep: ${{ needs.pr-tags.outputs.tags }} | |
| display_name: "remote-ssh" | |
| upload_logs: false | |
| allow_soft_fail: false | |
| secrets: inherit | |
| unit-tests: | |
| name: test | |
| uses: ./.github/workflows/test-unit.yml | |
| secrets: inherit | |
| with: | |
| save_cache: false # PRs restore from main only; test-merge.yml saves | |
| ext-host-tests: | |
| name: test | |
| uses: ./.github/workflows/test-ext-host.yml | |
| secrets: inherit | |
| with: | |
| pull_request: true |