标签:mirrors help 文件 版本 res 上传 message ESS arch
注意:
此方案仅适合已经自行搭建私有仓库的用户使用
如非必要,尽可能使用软件开发云或其他服务提供的镜像站,避免此类特殊处理(会导致仓库维护成本增加)
YARN构建中,如果使用了cypress包,会出现如下的下载过程
1. 从npm仓库下载 cypress.tgz : npm http fetch GET 200 https://mirrors.huaweicloud.com/repository/npm/cypress/-/cypress-3.1.4.tgz 146ms
2. 执行cypress-3.1.4.tgz中的脚本,该脚本会拼接出cypress.zip的下载地址并下载,分析cypress.tgz脚本发现,下载地址获取过程如下:
(1) 获取下载服务器地址:如果环境变量有值,则去环境变量中配置的地址,否则取默认地址 https://download.cypress.io/
(2) 拼接cypress.zip文件路径:脚本中会固定拼接成 desktop/3.1.4?platform=linux&arch=x64
(3) 最终得到cypress.zip下载地址为:https://download.cypress.io/desktop/3.1.4?platform=linux&arch=x64 ,开始下载依赖
3. 从国内下载 https://download.cypress.io/desktop/3.1.4?platform=linux&arch=x64 时,速度比较慢,会导致构建卡顿甚至超时失败
从”场景描述“中下载步骤可以看出:
国内访问cypress.io慢,需要替换其他地址,cypress.tgz已提供了环境变量 (CYPRESS_DOWNLOAD_MIRROR),可以更换
下载地址 https://download.cypress.io/desktop/3.1.4?platform=linux&arch=x64 中,可以在构建过程中改变的只有 https://download.cypress.io部分,余下内容为固定值无法改变
手工下载cypress.zip文件,并上传到私有仓库
上传到私有仓库时,指定文件路径为/desktop/3.1.4,与cypress.tgz脚本中定义的保持一致(版本号3.1.4以实际使用为准)
在构建命令中设置环境变量,将https://download.cypress.io替换为私有仓库地址
此处提供简易操作步骤如下:
https://download.cypress.io/desktop/3.1.4?platform=linux&arch=x64
curl -v --user ‘admin:admin123‘ --upload-file ./cypress.zip http://localhost:8081/repository/npm/cypress/desktop/3.1.4
注意:
上传时指定的文件路径(/desktop/3.1.4)必须与官网下载地址的文件路径保持一致,此处使用desktop/3.1.4即可(具体版本号以实际使用的版本为准)
在构建命令前添加:
export CYPRESS_DOWNLOAD_MIRROR="http://localhost:8081/repository/npm/cypress/"
标签:mirrors help 文件 版本 res 上传 message ESS arch
原文地址:https://www.cnblogs.com/mouseleo/p/11925437.html