fixed # 修复工作流BUG

This commit is contained in:
2026-10-27 09:47:48 +08:00
parent e7c6eac07f
commit b3455ded58
4 changed files with 19 additions and 9 deletions
+1 -2
View File
@@ -8,8 +8,7 @@ from zipfile import ZipFile
ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(ROOT / 'src'))
from farm_core.catalogue_release import parse_manifest
from farm_render.catalogue_bundle import ROOTS
from farm_core.catalogue_release import ROOTS, parse_manifest
def check(root):
+6
View File
@@ -15,6 +15,12 @@ FILES = {
MANIFEST_LIMIT = 16 * 1024
DIGEST = re.compile(r'[0-9a-f]{64}')
VERSION = re.compile(r'[A-Za-z0-9._-]{1,64}')
ROOTS = {
'Github': 'https://raw.githubusercontent.com/Shu-Ying/'
'farm_service/main/catalogue',
'Gitea': 'https://gitea.diuse.work/Diuse/farm_service/'
'raw/branch/main/catalogue',
}
def _pairs(items):
+1 -7
View File
@@ -11,7 +11,7 @@ import uuid
from zipfile import BadZipFile
from farm_core.catalogue_release import (
FILES, MANIFEST_LIMIT, canonical, check_file, decode, load_catalogue,
FILES, MANIFEST_LIMIT, ROOTS, canonical, check_file, decode, load_catalogue,
parse_manifest,
)
from farm_core.domain import FarmError
@@ -23,12 +23,6 @@ from .release_validation import validate_archive, validate_metadata
logger = logging.getLogger(__name__)
_LOCK = threading.RLock()
_FAILURES = (OSError, ValueError, FarmError, EOFError, BadZipFile)
ROOTS = {
'Github': 'https://raw.githubusercontent.com/Shu-Ying/'
'farm_service/main/catalogue',
'Gitea': 'https://gitea.diuse.work/Diuse/farm_service/'
'raw/branch/main/catalogue',
}
@dataclass(frozen=True)
+11
View File
@@ -1,6 +1,8 @@
from concurrent.futures import ThreadPoolExecutor
from io import BytesIO
from pathlib import Path
import subprocess
import sys
import tempfile
import unittest
from unittest.mock import patch
@@ -12,6 +14,15 @@ ZIP = ROOT / 'src/farm_render/data/assets.zip'
class BundleTests(unittest.TestCase):
def test_manifest_check_without_third_party_packages(self):
result = subprocess.run(
[sys.executable, '-S',
str(ROOT / 'scripts/check_asset_manifest.py')],
cwd=ROOT, capture_output=True, text=True, timeout=30,
)
self.assertEqual(result.returncode, 0, result.stdout + result.stderr)
self.assertIn('Verified external asset manifest', result.stdout)
def setUp(self):
self.temp = tempfile.TemporaryDirectory()
self.addCleanup(self.temp.cleanup)