feat: Record + Z-Stack acquisition mode #2430
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: Install Environment and Run Tests | |
| on: | |
| push: | |
| branches: master | |
| pull_request: | |
| jobs: | |
| install-and-test: | |
| permissions: | |
| contents: read | |
| runs-on: ubuntu-22.04 | |
| env: | |
| DISPLAY: ":99.0" | |
| steps: | |
| # Our workflows were running out of memory. We don't need most of the pre-installed machinery in the | |
| # github ubuntu image, so remove it using this helper action. | |
| # See: https://github.com/marketplace/actions/free-disk-space-ubuntu | |
| - name: Free Disk Space (Ubuntu) | |
| uses: jlumbroso/free-disk-space@main | |
| with: | |
| tool-cache: false | |
| android: true | |
| dotnet: true | |
| haskell: true | |
| large-packages: true | |
| docker-images: true | |
| swap-storage: true | |
| - name: Checkout the Squid repo | |
| uses: actions/checkout@v4 | |
| - name: Run the setup script for Ubuntu 22.04 | |
| run: ./setup_22.04.sh -r=${{ github.workspace }} | |
| working-directory: ./software | |
| - name: Run the cuda setup script | |
| run: ./setup_cuda_22.04.sh | |
| working-directory: ./software | |
| - name: "Copy a valid config into the repo software root" | |
| run: | | |
| cp configurations/configuration_Squid+.ini . | |
| # Disable memory profiling in CI to avoid fork+threads deadlock issue | |
| sed -i '/^\[GENERAL\]/a enable_memory_profiling = false' configuration_Squid+.ini | |
| working-directory: ./software | |
| - name: "Populate illumination_channel_config from .example template" | |
| # The illumination channel config is gitignored but required for | |
| # default-profile config generation. Other machine_configs templates | |
| # are intentionally not copied to avoid activating optional hardware | |
| # paths (e.g., confocal, multi-camera) during tests. | |
| run: cp machine_configs/illumination_channel_config.yaml.example machine_configs/illumination_channel_config.yaml | |
| working-directory: ./software | |
| # For more on the headless qt prep, see here: https://pytest-qt.readthedocs.io/en/latest/troubleshooting.html#github-actions-azure-pipelines-travis-ci-and-gitlab-ci-cd | |
| - name: "Prep for headless qt tests." | |
| run: | | |
| sudo apt install libxkbcommon-x11-0 xvfb libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xfixes0 x11-utils | |
| /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX | |
| - name: Run the tests | |
| # test_HighContentScreeningGui.py: PySide6 QObject double-init bug (separate issue) | |
| run: python3 -m pytest --ignore=tests/control/test_HighContentScreeningGui.py | |
| working-directory: ./software |