ci(forgejo): fix actions/checkout by installing Node.js and uv PATH
Some checks failed
Some checks failed
- actions/checkout@v4 needs Node.js; python:3.11-slim does not have it. Add Node.js install step before checkout in all CI jobs. - Forgejo runner does not honor GITHUB_PATH for subsequent steps, so symlink uv/uvx into /usr/local/bin after install. - Fix pyproject.toml for setuptools >=77 PEP 639: - license = "MIT" (SPDX) - remove deprecated License :: * classifiers - Add --python-version 3.12 to mypy to avoid numpy pyi syntax errors.
This commit is contained in:
parent
98eebe62bf
commit
bf5b02fd8f
2 changed files with 49 additions and 8 deletions
|
|
@ -10,12 +10,23 @@ on:
|
|||
pull_request:
|
||||
branches: [main]
|
||||
|
||||
env:
|
||||
UV_BIN: /root/.local/bin/uv
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: docker-x64
|
||||
container:
|
||||
image: python:3.11-slim
|
||||
steps:
|
||||
- name: Install Node.js for actions/checkout
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y --no-install-recommends curl ca-certificates
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
||||
apt-get install -y --no-install-recommends nodejs
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Install system deps
|
||||
|
|
@ -27,7 +38,8 @@ jobs:
|
|||
- name: Install uv
|
||||
run: |
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||
ln -sf /root/.local/bin/uv /usr/local/bin/uv
|
||||
ln -sf /root/.local/bin/uvx /usr/local/bin/uvx
|
||||
|
||||
- name: Setup Python
|
||||
run: |
|
||||
|
|
@ -50,29 +62,45 @@ jobs:
|
|||
container:
|
||||
image: python:3.11-slim
|
||||
steps:
|
||||
- name: Install Node.js for actions/checkout
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends curl ca-certificates
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
||||
apt-get install -y --no-install-recommends nodejs
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install uv + setup
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && rm -rf /var/lib/apt/lists/*
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||
ln -sf /root/.local/bin/uv /usr/local/bin/uv
|
||||
ln -sf /root/.local/bin/uvx /usr/local/bin/uvx
|
||||
uv python install 3.11
|
||||
uv venv --python 3.11 .venv
|
||||
uv pip install --python .venv/bin/python -e ".[dev]"
|
||||
- name: Type check (mypy)
|
||||
run: source .venv/bin/activate && mypy . --ignore-missing-imports
|
||||
run: source .venv/bin/activate && mypy . --ignore-missing-imports --python-version 3.12
|
||||
|
||||
test:
|
||||
runs-on: docker-x64
|
||||
container:
|
||||
image: python:3.11-slim
|
||||
steps:
|
||||
- name: Install Node.js for actions/checkout
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends curl ca-certificates
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
||||
apt-get install -y --no-install-recommends nodejs
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install uv + setup
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends gcc libpq-dev curl ca-certificates && rm -rf /var/lib/apt/lists/*
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||
ln -sf /root/.local/bin/uv /usr/local/bin/uv
|
||||
ln -sf /root/.local/bin/uvx /usr/local/bin/uvx
|
||||
uv python install 3.11
|
||||
uv venv --python 3.11 .venv
|
||||
uv pip install --python .venv/bin/python -e ".[dev]"
|
||||
|
|
@ -85,6 +113,13 @@ jobs:
|
|||
container:
|
||||
image: python:3.11-slim
|
||||
steps:
|
||||
- name: Install Node.js for actions/checkout
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends curl ca-certificates
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
||||
apt-get install -y --no-install-recommends nodejs
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
|
@ -100,12 +135,20 @@ jobs:
|
|||
container:
|
||||
image: python:3.11-slim
|
||||
steps:
|
||||
- name: Install Node.js for actions/checkout
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends curl ca-certificates
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
||||
apt-get install -y --no-install-recommends nodejs
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install uv + setup
|
||||
run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && rm -rf /var/lib/apt/lists/*
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||
ln -sf /root/.local/bin/uv /usr/local/bin/uv
|
||||
ln -sf /root/.local/bin/uvx /usr/local/bin/uvx
|
||||
uv python install 3.11
|
||||
uv venv --python 3.11 .venv
|
||||
uv pip install --python .venv/bin/python bandit
|
||||
|
|
|
|||
|
|
@ -12,13 +12,11 @@ version = "3.0.0"
|
|||
description = "Free web scraping + browser automation API — self-hosted, no API keys needed"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.11"
|
||||
license = { text = "MIT AND BSL-1.1" }
|
||||
license = "MIT"
|
||||
authors = [{ name = "Rug Munch Media LLC" }]
|
||||
keywords = ["scraping", "crawler", "browser-automation", "mcp", "x402", "ai-agents"]
|
||||
classifiers = [
|
||||
"Development Status :: 4 - Beta",
|
||||
"License :: OSI Approved :: MIT License",
|
||||
"License :: Other/Proprietary License",
|
||||
"Operating System :: OS Independent",
|
||||
"Programming Language :: Python :: 3",
|
||||
"Programming Language :: Python :: 3.11",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue