59 lines
1.8 KiB
YAML
59 lines
1.8 KiB
YAML
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@v4
|
|
- 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@v4
|
|
with:
|
|
enable-cache: true
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.12"
|
|
check-latest: 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
|