Repository navigation
fix(sync): preserve source and foreign files during atomic copy #52
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: ProSync source-platform smoke | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - main | |
| pull_request: | |
| branches: | |
| - master | |
| - main | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| smoke: | |
| name: Smoke (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 15 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - macos-latest | |
| env: | |
| QT_QPA_PLATFORM: offscreen | |
| PYTHONIOENCODING: utf-8 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.11" | |
| cache: pip | |
| - name: Install Qt runtime libraries (Linux only) | |
| if: runner.os == 'Linux' | |
| run: | | |
| sudo apt-get update -qq | |
| sudo apt-get install -y --no-install-recommends \ | |
| libgl1 \ | |
| libegl1 \ | |
| libglib2.0-0 \ | |
| libdbus-1-3 \ | |
| libxkbcommon-x11-0 \ | |
| libxcb-icccm4 \ | |
| libxcb-image0 \ | |
| libxcb-keysyms1 \ | |
| libxcb-randr0 \ | |
| libxcb-render-util0 \ | |
| libxcb-xinerama0 \ | |
| libxcb-xfixes0 | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install "PySide6>=6.5.0" paramiko tzdata pytest | |
| - name: Compile modules (bytecode validation) | |
| run: python -m compileall -q . | |
| - name: Run cross-platform source smoke runner | |
| run: python source_platform_smoke.py | |
| - name: Run dedicated Linux platform smoke | |
| if: runner.os == 'Linux' | |
| run: python tests/linux_platform_smoke.py | |
| - name: Run dedicated macOS platform smoke | |
| if: runner.os == 'macOS' | |
| run: python tests/macos_platform_smoke.py | |
| - name: Run full pytest suite | |
| run: python -m pytest -ra -v |