name: CI on: push: branches: - main pull_request: workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: run-pre-commit: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: persist-credentials: false - uses: astral-sh/setup-uv@v5 with: enable-cache: false - run: uv tool run --from pre-commit@latest --with pre-commit-uv --no-cache --python 3.12 pre-commit run --all-files build: strategy: matrix: include: - name: linux-x86-64 runner: ubuntu-latest - name: windows-x86-64 runner: windows-latest - name: macos-x86-64 runner: macos-13 - name: macos-arm64 runner: macos-14 fail-fast: false runs-on: ${{ matrix.runner }} permissions: id-token: write attestations: write steps: - uses: actions/checkout@v4 with: persist-credentials: false - uses: astral-sh/setup-uv@v5 with: enable-cache: true - run: uv run --no-dev --group nuitka --frozen --python 3.12 python -m nuitka --mode=standalone --python-flag='-m' --assume-yes-for-downloads --deployment --lto=yes proxy_scraper_checker - run: mv config.toml proxy_scraper_checker.dist/ - if: ${{ github.event_name != 'pull_request' }} uses: actions/attest-build-provenance@v2 with: subject-path: proxy_scraper_checker.dist - uses: actions/upload-artifact@v4 with: name: artifact-${{ matrix.name }} path: proxy_scraper_checker.dist/ if-no-files-found: error