这个仓库用于批量获取 VS Code/Code-Server 扩展(VSIX),并将成功下载的扩展上传到 CNB Releases,方便离线或内网环境使用。
主要流程:
config.yml 维护需要的扩展列表(extensions: 下按 publisher.name 列出)。.ci/download.sh:从 OpenVSX 与 VS Marketplace 拉取 VSIX,校验成功后写入 download.json。.ci/upload.sh:仅上传 download.json 中标记 success 的 VSIX 到指定 Release。.ci/releases.sh:根据 download.json 生成/更新 Release 说明,列出下载链接与元信息。curl、jq、unzip、numfmt(coreutils)。CNB_API_ENDPOINT、CNB_WEB_ENDPOINTCNB_TOKENCNB_REPO_SLUGTAG_NAME/RELEASE_NAME(默认 Extension),DOWNLOAD_JSON(默认 download.json),OUT_DIR(默认 vsix)。配置扩展列表
编辑 config.yml,在 extensions: 下追加 publisher.name 项。
下载扩展
bash .ci/download.sh
download.json;失败不会写入。vsix/。上传扩展到 Release
bash .ci/upload.sh
download.json 中 status=="success" 的记录。Extension)。更新 Release 说明
bash .ci/releases.sh
download.json 的成功项,写入 Release body,生成下载链接。download.json,失败项无需清理。DOWNLOAD_JSON=other.json bash .ci/download.sh。TAG_NAME=my-tag RELEASE_NAME=my-tag bash .ci/upload.sh / .ci/releases.sh。unzip -t 通过才视为成功;拦截页会被删除并重试。*** End Patch*/