测试的扫描文件
This commit is contained in:
21
app.py
21
app.py
@@ -2,6 +2,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import os
|
||||
import time
|
||||
import logging
|
||||
import traceback
|
||||
from typing import Dict, Tuple, Any
|
||||
@@ -131,21 +132,27 @@ def handle_gitea_webhook():
|
||||
|
||||
# Python 扫描
|
||||
if 'python' in config.get('scanner', {}).get('languages', []):
|
||||
start_time = time.time()
|
||||
scan_results['python'] = python_scanner.scan(
|
||||
clone_url, commit_id, branch
|
||||
)
|
||||
logger.info(f"[TIMER] Python 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# JavaScript/TypeScript 扫描
|
||||
if any(lang in config.get('scanner', {}).get('languages', [])
|
||||
for lang in ['javascript', 'typescript']):
|
||||
start_time = time.time()
|
||||
scan_results['javascript'] = js_scanner.scan(
|
||||
clone_url, commit_id, branch
|
||||
)
|
||||
logger.info(f"[TIMER] JavaScript 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# 安全扫描
|
||||
start_time = time.time()
|
||||
scan_results['security'] = security_scanner.scan(
|
||||
clone_url, commit_id, branch
|
||||
)
|
||||
logger.info(f"[TIMER] 安全扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# 生成报告
|
||||
report = report_generator.generate(
|
||||
@@ -228,27 +235,35 @@ def handle_pull_request(payload: Dict[str, Any]) -> Tuple[Dict, int]:
|
||||
|
||||
# Python 扫描
|
||||
if 'python' in config.get('scanner', {}).get('languages', []):
|
||||
start_time = time.time()
|
||||
scan_results['python'] = python_scanner.scan(
|
||||
clone_url, source_sha, source_branch, changed_files
|
||||
)
|
||||
logger.info(f"[TIMER] Python 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# JavaScript/TypeScript 扫描
|
||||
if any(lang in config.get('scanner', {}).get('languages', [])
|
||||
for lang in ['javascript', 'typescript']):
|
||||
start_time = time.time()
|
||||
scan_results['javascript'] = js_scanner.scan(
|
||||
clone_url, source_sha, source_branch, changed_files
|
||||
)
|
||||
logger.info(f"[TIMER] JavaScript 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# 安全扫描
|
||||
start_time = time.time()
|
||||
scan_results['security'] = security_scanner.scan(
|
||||
clone_url, source_sha, source_branch, changed_files
|
||||
)
|
||||
logger.info(f"[TIMER] 安全扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# AI 代码审查
|
||||
if config.get('ai', {}).get('enabled', False):
|
||||
start_time = time.time()
|
||||
scan_results['ai'] = ai_reviewer.scan(
|
||||
clone_url, source_sha, source_branch, changed_files
|
||||
)
|
||||
logger.info(f"[TIMER] AI 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# 获取 PR 的代码差异,用于将问题与代码片段关联
|
||||
pr_diff = None
|
||||
@@ -326,13 +341,19 @@ def manual_scan():
|
||||
scan_results = {}
|
||||
|
||||
if 'python' in config.get('scanner', {}).get('languages', []):
|
||||
start_time = time.time()
|
||||
scan_results['python'] = python_scanner.scan(repo_url, commit_id, branch)
|
||||
logger.info(f"[TIMER] Python 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
if any(lang in config.get('scanner', {}).get('languages', [])
|
||||
for lang in ['javascript', 'typescript']):
|
||||
start_time = time.time()
|
||||
scan_results['javascript'] = js_scanner.scan(repo_url, commit_id, branch)
|
||||
logger.info(f"[TIMER] JavaScript 扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
start_time = time.time()
|
||||
scan_results['security'] = security_scanner.scan(repo_url, commit_id, branch)
|
||||
logger.info(f"[TIMER] 安全扫描耗时: {time.time() - start_time:.2f}秒")
|
||||
|
||||
# 生成报告
|
||||
report = report_generator.generate(
|
||||
|
||||
Reference in New Issue
Block a user