mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-20 20:21:20 -08:00
2.9 KiB
2.9 KiB
CI-02 Pages产物预检与独立部署
生产构建只更新compiled,而现有移动页、iframe和编辑器示例继续使用uncompiled。 直接上传docs可能保留旧开发产物。本次在独立暂存目录按现有开发配置构建21个旧入口, 保持旧URL/全局名称/开发模式,工作区docs和包产物不被改写。没有更换播放器API、版本或依赖。
新增pages/artifact.ts负责文件、路径、域名和compiled一致性,prepare.ts负责暂存和 调用现有library构建模块,入口CLI只处理命令/输出。包源码、构建输入和完整站点输出 都有指纹。CNAME/.nojekyll、旧HTML、语言/编辑器/i18n入口必须存在;规则不声称覆盖 所有动态外部链接。test:pages及test:pages:browser加入package scripts,普通Node测试 运行文件/工作流回归,浏览器验证仅在显式命令或受信任Pages准备分支中执行。
工作流先build,再prepare,再安装浏览器和执行暂存入口检查,最后上传准确site路径。 部署继续等待全部CI作业成功,保留master/启用变量/manual/environment限制;仅deploy 有Pages/OIDC写权限。不增加远端操作,失败不上传用于部署的站点,但保留诊断报告。
实际验证
- 21个入口构建成功,63项compiled/dist比较一致,暂存546个文件;正常目录与包源码未改。
- 55项CI/文件/权限回归通过;严格library TS、定向lint与actionlint1.7.12通过。
- 同一暂存目录的demo/ESM两种入口,Windows Chromium153.0.8010.12、Firefox155.0、 WebKit26.6共6项实际播放、章节更新、网页全屏和销毁检查通过。
- 首轮拦截MP4完整响应使WebKit两项超时;第二轮跨端口原生HTTP使Chromium两项媒体 ERR_FAILED,其余通过。最终使用同源HTTP/Range。没有确定跨端口错误的浏览器内部根因。
- 同源首轮全部走完播放,但Chromium两项把媒体ERR_ABORTED并入脚本错误断言而失败。 修正为记录网络事件、检查脚本加载错误/JS异常以及播放时的video.error。保留原失败报告, 没有为掩盖产品错误增加等待或关闭浏览器;首轮默认30秒,最终显式10秒。
- Pages API、分支/环境只读查询和7个线上HEAD200留档;部署变量返回404、启用状态未知。 旧gh-pages提交的本地ZIP已保存;没有修改Pages source或发布站点。
证据见机器记录,维护地图和恢复流程见 部署说明。CI-02只完成本地实现;CI-04仍负责真实远端run、 环境迁移、部署后探测及故障演练。站点/插件/设备/许可和发布复盘未自动完成。
回退本提交恢复原工作流上传docs的配置,移除新脚本/测试/状态;远端设置不会随Git回退, 必须按部署说明单独处理。不push、不publish,也不执行远端恢复写入。