Merge pull request 'Reinstall cached workflow deps and add snapshot admin pyyaml setup' (#69) from codex/roadmap-publish into main
This commit is contained in:
@@ -71,6 +71,7 @@ jobs:
|
|||||||
else
|
else
|
||||||
echo "=== venv 캐시 히트: $("$VENV/bin/python" --version 2>&1) ==="
|
echo "=== venv 캐시 히트: $("$VENV/bin/python" --version 2>&1) ==="
|
||||||
fi
|
fi
|
||||||
|
"$VENV/bin/pip" install requests pyyaml openpyxl --quiet
|
||||||
echo "$VENV/bin" >> $GITHUB_PATH
|
echo "$VENV/bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
- name: Install Node Dependencies
|
- name: Install Node Dependencies
|
||||||
|
|||||||
@@ -120,6 +120,7 @@ jobs:
|
|||||||
"$VENV/bin/pip" install requests beautifulsoup4 pyyaml --quiet
|
"$VENV/bin/pip" install requests beautifulsoup4 pyyaml --quiet
|
||||||
ls -dt "$VENV_BASE"/*/ 2>/dev/null | tail -n +3 | xargs rm -rf 2>/dev/null || true
|
ls -dt "$VENV_BASE"/*/ 2>/dev/null | tail -n +3 | xargs rm -rf 2>/dev/null || true
|
||||||
fi
|
fi
|
||||||
|
"$VENV/bin/pip" install requests beautifulsoup4 pyyaml --quiet
|
||||||
echo "$VENV/bin" >> $GITHUB_PATH
|
echo "$VENV/bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
- name: "[CRITICAL] No Direct API Trading Gate"
|
- name: "[CRITICAL] No Direct API Trading Gate"
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ jobs:
|
|||||||
"$VENV/bin/pip" install --upgrade pip --quiet
|
"$VENV/bin/pip" install --upgrade pip --quiet
|
||||||
"$VENV/bin/pip" install requests beautifulsoup4 pyyaml openpyxl --quiet
|
"$VENV/bin/pip" install requests beautifulsoup4 pyyaml openpyxl --quiet
|
||||||
fi
|
fi
|
||||||
|
"$VENV/bin/pip" install requests beautifulsoup4 pyyaml openpyxl --quiet
|
||||||
echo "$VENV/bin" >> $GITHUB_PATH
|
echo "$VENV/bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
- name: "[CRITICAL] No Direct API Trading Gate"
|
- name: "[CRITICAL] No Direct API Trading Gate"
|
||||||
|
|||||||
@@ -28,6 +28,19 @@ jobs:
|
|||||||
git fetch origin main --depth=1
|
git fetch origin main --depth=1
|
||||||
git reset --hard FETCH_HEAD
|
git reset --hard FETCH_HEAD
|
||||||
|
|
||||||
|
- name: Setup Python Environment
|
||||||
|
run: |
|
||||||
|
VENV_BASE=/volume1/gitea/python_venv
|
||||||
|
REQ_HASH=$(md5sum tools/validate_snapshot_admin_workflow_v1.py 2>/dev/null | cut -d' ' -f1 || echo "snapshot-admin-default")
|
||||||
|
VENV="$VENV_BASE/$REQ_HASH"
|
||||||
|
if [ ! -f "$VENV/bin/python" ]; then
|
||||||
|
mkdir -p "$VENV_BASE"
|
||||||
|
/usr/bin/python3 -m venv "$VENV"
|
||||||
|
"$VENV/bin/pip" install --upgrade pip --quiet
|
||||||
|
fi
|
||||||
|
"$VENV/bin/pip" install pyyaml --quiet
|
||||||
|
echo "$VENV/bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
- name: Validate Snapshot Admin Workflow
|
- name: Validate Snapshot Admin Workflow
|
||||||
run: python3 tools/validate_snapshot_admin_workflow_v1.py
|
run: python3 tools/validate_snapshot_admin_workflow_v1.py
|
||||||
|
|
||||||
|
|||||||
@@ -2,13 +2,14 @@
|
|||||||
|
|
||||||
## Title
|
## Title
|
||||||
|
|
||||||
`Synology CI Python 3.8 compatibility fixes for snapshot_admin and KIS validation`
|
`Synology CI dependency hardening for snapshot_admin and KIS validation`
|
||||||
|
|
||||||
## Short Body
|
## Short Body
|
||||||
|
|
||||||
- `src/quant_engine/snapshot_admin_store_v1.py` no longer imports `zoneinfo`, so the Synology Python 3.8.12 runner can import the snapshot admin store without crashing.
|
- `src/quant_engine/snapshot_admin_store_v1.py` no longer imports `zoneinfo`, so the Synology Python 3.8.12 runner can import the snapshot admin store without crashing.
|
||||||
- `src/quant_engine/kis_api_client_v1.py` now lazy-loads `requests`, which keeps the module importable in tests and turns missing dependency failures into explicit runtime validation errors.
|
- `src/quant_engine/kis_api_client_v1.py` now lazy-loads `requests`, which keeps the module importable in tests and turns missing dependency failures into explicit runtime validation errors.
|
||||||
- `.gitea/workflows/ci.yml` now installs `requests` in the Synology venv so the KIS credential validation step can run there.
|
- `.gitea/workflows/ci.yml`, `.gitea/workflows/kis_data_collection.yml`, and `.gitea/workflows/qualitative_sell_strategy.yml` now reinstall their Python dependencies on every run so cached venvs cannot hide missing packages.
|
||||||
|
- `.gitea/workflows/snapshot_admin.yml` now has a Python setup step that installs `pyyaml` before the snapshot admin workflow validators run.
|
||||||
- `docs/SYNOLOGY_SNAPSHOT_ADMIN_FINAL_EXECUTION_ONE_PAGER.md` remains the compact NAS field run sheet for the `WBS-7.9` live verification sequence.
|
- `docs/SYNOLOGY_SNAPSHOT_ADMIN_FINAL_EXECUTION_ONE_PAGER.md` remains the compact NAS field run sheet for the `WBS-7.9` live verification sequence.
|
||||||
- `docs/SYNOLOGY_SNAPSHOT_ADMIN_DEPLOYMENT_CHECKLIST.md` points at the one-page run sheet and keeps the evidence rule explicit so `WBS-7.9` stays open until NAS-side verification is archived.
|
- `docs/SYNOLOGY_SNAPSHOT_ADMIN_DEPLOYMENT_CHECKLIST.md` points at the one-page run sheet and keeps the evidence rule explicit so `WBS-7.9` stays open until NAS-side verification is archived.
|
||||||
- `docs/ROADMAP_WBS.md` still states the `WBS-4.1 -> WBS-4.2 -> WBS-4.3` wait order explicitly and separates loopback smoke success from actual NAS live verification.
|
- `docs/ROADMAP_WBS.md` still states the `WBS-4.1 -> WBS-4.2 -> WBS-4.3` wait order explicitly and separates loopback smoke success from actual NAS live verification.
|
||||||
|
|||||||
Reference in New Issue
Block a user