mirror of
https://github.com/Horizontal42/netsleuth.git
synced 2026-11-11 02:12:04 +03:00
73 lines
2.1 KiB
YAML
73 lines
2.1 KiB
YAML
name: Daily Checks
|
|
|
|
on:
|
|
schedule:
|
|
# Запускается каждый день в 03:00 UTC
|
|
- cron: '0 3 * * *'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
integration-tests:
|
|
runs-on: ubuntu-latest
|
|
if: github.repository == 'netsleuth/netsleuth'
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v3
|
|
|
|
- name: Set up Python
|
|
run: uv python install 3.12
|
|
|
|
- name: Install dependencies
|
|
run: uv sync --extra tcptrace --extra ndt7
|
|
|
|
- name: Run integration tests (with real APIs)
|
|
run: uv run pytest tests/integration/ -v --integration
|
|
continue-on-error: true
|
|
env:
|
|
IPINFO_TOKEN: ${{ secrets.IPINFO_TOKEN }}
|
|
|
|
- name: Check dependency updates
|
|
run: |
|
|
uv pip compile pyproject.toml -o requirements-new.txt
|
|
diff requirements.txt requirements-new.txt || true
|
|
|
|
- name: Create issue if updates available
|
|
uses: peter-evans/create-issue-from-file@v4
|
|
with:
|
|
title: "Daily: Available dependency updates"
|
|
content-filepath: requirements-new.txt
|
|
labels: dependencies,automated
|
|
continue-on-error: true
|
|
|
|
performance-benchmarks:
|
|
runs-on: ubuntu-latest
|
|
if: github.repository == 'netsleuth/netsleuth'
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v3
|
|
|
|
- name: Set up Python
|
|
run: uv python install 3.12
|
|
|
|
- name: Install dependencies
|
|
run: uv sync --extra tcptrace --extra ndt7
|
|
|
|
- name: Run benchmarks
|
|
run: uv run pytest tests/benchmarks/ -v --benchmark-json=benchmark.json
|
|
continue-on-error: true
|
|
|
|
- name: Store benchmark results
|
|
uses: benchmark-action/github-action-benchmark@v1
|
|
with:
|
|
name: Netsleuth Benchmarks
|
|
tool: 'pytest'
|
|
output-file-path: benchmark.json
|
|
auto-push: true
|
|
gh-repository: github.com/netsleuth/netsleuth
|
|
continue-on-error: true
|