Files
guarddog-nexus/.env.example
Marker689 d23abe8b4b feat: лимит конкурентных сканов через asyncio.Semaphore
- config.py: MAX_CONCURRENT_SCANS (default=4)
- harvester.py: глобальный _scan_semaphore оборачивает scan_package()
  — при N одновременных сканах, (N+1)-й будет ждать освобождения слота
  — download и SHA256 не лимитируются, только guarddog subprocess
- docker-compose.yml, .env.example: переменная добавлена
2026-05-10 05:52:23 +03:00

38 lines
657 B
Plaintext

# Nexus connection
NEXUS_URL=http://nexus:8081
NEXUS_USERNAME=admin
NEXUS_PASSWORD=admin123
# Database
DATABASE_PATH=/data/guarddog.db
# Server
HOST=0.0.0.0
PORT=8080
# Logging
LOG_LEVEL=INFO
LOG_SYSLOG_HOST=
LOG_SYSLOG_PORT=514
LOG_SYSLOG_FACILITY=local0
# Webhook
WEBHOOK_SECRET=
# Scanner
SCAN_TIMEOUT_SECONDS=300
TEMP_DIR=/tmp/guarddog-nexus
GUARDDOG_BINARY=guarddog
MAX_CONCURRENT_SCANS=4
# Timeouts (seconds)
NEXUS_DOWNLOAD_TIMEOUT_SECONDS=120
NEXUS_API_TIMEOUT_SECONDS=30
# LLM analysis (optional — set LLM_ENABLED=1 to activate)
LLM_ENABLED=0
LLM_API_BASE=https://api.openai.com/v1
LLM_API_KEY=
LLM_MODEL=gpt-4o-mini
LLM_TIMEOUT_SECONDS=30