需求:
package.json中有一个公司gitlab私服的UI库需要引入
解决方案尝试:
- 在jenkins上无论是以http+git还是ssh+git都有麻烦,前者报权限问题,后者需要在gitlab上给jenkins专门建立账户;
- github上发布源码,在package.json中以http+git形式引入,但这种公司不允许;
- 在项目里以submodule方式引入UI库,这种的麻烦在于一旦UI库有更新,引入该UI库的项目必须手动更新以获取最新版本号,并随项目提交;当然,也能有个方法多少弥补下麻烦,就是通过构建代码或git 钩子,主动拉一下submodule;
- 注册npm高级用户,发布private scope npm,也就是npm上发布xx/yy形式(npm如何发布scope库)的包,缺点是高级用户需收费(非高级用户也可以发布公共scope,按月收费),再配合gitlab发布规则发布UI库
- 搭建私服npm
-
参见下图第二种方式,将UI库打包成tgz形式,放到统一的服务器上(本质类似上一种方式)
package.json中依赖形式
网友评论