mirror of
https://github.com/FuzzingLabs/fuzzforge_ai.git
synced 2026-02-12 20:32:46 +00:00
71 lines
1.5 KiB
YAML
71 lines
1.5 KiB
YAML
name: Python CI
|
|
|
|
# This is a dumb Ci to ensure that the python client and backend builds correctly
|
|
# It could be optimized to run faster, building, testing and linting only changed code
|
|
# but for now it is good enough. It runs on every push and PR to any branch.
|
|
# It also runs on demand.
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
push:
|
|
paths:
|
|
- "ai/**"
|
|
- "backend/**"
|
|
- "cli/**"
|
|
- "sdk/**"
|
|
- "src/**"
|
|
pull_request:
|
|
paths:
|
|
- "ai/**"
|
|
- "backend/**"
|
|
- "cli/**"
|
|
- "sdk/**"
|
|
- "src/**"
|
|
|
|
jobs:
|
|
ci:
|
|
name: ci
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
|
|
- name: Setup uv
|
|
uses: astral-sh/setup-uv@v6
|
|
with:
|
|
enable-cache: true
|
|
|
|
- name: Set up Python
|
|
run: uv python install
|
|
|
|
# Validate no obvious issues
|
|
# Quick hack because CLI returns non-zero exit code when no args are provided
|
|
- name: Run base command
|
|
run: |
|
|
set +e
|
|
uv run ff
|
|
if [ $? -ne 2 ]; then
|
|
echo "Expected exit code 2 from 'uv run ff', got $?"
|
|
exit 1
|
|
fi
|
|
|
|
- name: Build fuzzforge_ai package
|
|
run: uv build
|
|
|
|
- name: Build ai package
|
|
working-directory: ai
|
|
run: uv build
|
|
|
|
- name: Build cli package
|
|
working-directory: cli
|
|
run: uv build
|
|
|
|
- name: Build sdk package
|
|
working-directory: sdk
|
|
run: uv build
|
|
|
|
- name: Build backend package
|
|
working-directory: backend
|
|
run: uv build
|