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 - run: pipx run 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 }} steps: - uses: actions/checkout@v4 - run: pipx install poetry - uses: actions/setup-python@v5 with: python-version: "3.12" cache: poetry check-latest: true - run: poetry install --only=main,nuitka --sync --no-root --extras=non-termux --no-interaction - run: poetry run --no-interaction python -m nuitka --standalone --python-flag='-m' --assume-yes-for-downloads proxy_scraper_checker - run: mv config.toml proxy_scraper_checker.dist/ - uses: actions/upload-artifact@v4 with: name: artifact-${{ matrix.name }} path: proxy_scraper_checker.dist/ if-no-files-found: error