PI stage: fix servo BOOL packing and connect error handling #127
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: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: ['*'] | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| # Skip intermediate builds: always. | |
| # Cancel intermediate builds: only if it is a pull request build. | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} | |
| jobs: | |
| test: | |
| name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 60 | |
| permissions: # needed to allow julia-actions/cache to proactively delete old caches that it has created | |
| actions: write | |
| contents: read | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| version: | |
| - '1.11' | |
| - '1' | |
| os: | |
| - ubuntu-latest | |
| arch: | |
| - x64 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: julia-actions/setup-julia@v3 | |
| with: | |
| version: ${{ matrix.version }} | |
| arch: ${{ matrix.arch }} | |
| - uses: julia-actions/cache@v3 | |
| # GLMakie (a hard dependency) needs an X display even to precompile, | |
| # so run a virtual framebuffer for the whole job. | |
| - name: Start virtual X display | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y xvfb | |
| Xvfb :99 -screen 0 1280x1024x24 & | |
| echo "DISPLAY=:99" >> "$GITHUB_ENV" | |
| - uses: julia-actions/julia-buildpkg@v1 | |
| - uses: julia-actions/julia-runtest@v1 | |
| with: | |
| prefix: xvfb-run -a | |
| - uses: julia-actions/julia-processcoverage@v1 | |
| - uses: codecov/codecov-action@v6 | |
| with: | |
| files: lcov.info | |
| docs: | |
| name: Documentation | |
| runs-on: ubuntu-latest | |
| permissions: | |
| actions: write # needed to allow julia-actions/cache to proactively delete old caches that it has created | |
| contents: write | |
| statuses: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: julia-actions/setup-julia@v3 | |
| with: | |
| version: '1' | |
| - uses: julia-actions/cache@v3 | |
| - name: Start virtual X display | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y xvfb | |
| Xvfb :99 -screen 0 1280x1024x24 & | |
| echo "DISPLAY=:99" >> "$GITHUB_ENV" | |
| - name: Configure doc environment | |
| shell: julia --project=docs --color=yes {0} | |
| run: | | |
| using Pkg | |
| Pkg.develop(PackageSpec(path=pwd())) | |
| Pkg.instantiate() | |
| - uses: julia-actions/julia-buildpkg@v1 | |
| # No xvfb-run prefix here: julia-docdeploy@v1 passes a multi-word prefix | |
| # as a single command name (exit 127). DISPLAY from the Xvfb step above | |
| # is enough for GLMakie. | |
| - uses: julia-actions/julia-docdeploy@v1 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Run doctests | |
| shell: julia --project=docs --color=yes {0} | |
| run: | | |
| using Documenter: DocMeta, doctest | |
| using MicroscopeControl | |
| DocMeta.setdocmeta!(MicroscopeControl, :DocTestSetup, :(using MicroscopeControl); recursive=true) | |
| doctest(MicroscopeControl) |