1. 前端static部署
微服务前端js,编译打包成的tar包,在部署阶段,需要解压缩到与这个微服务对应的location,这个过程分别在流水线的“代码打包”和“部署”这两个阶段完成。
代码打包:
通过下面的命令完成:
cd xxx-yyy && yarn --update-checksums && yarn && yarn build_test && cd dist && tar -czf ../xxx-yyy.tar.gz .
部署:
webDir="/data/website/${env}/${location}"
mkdir -p ${webDir} && rm -rf ${webDir}/* && tar -xf ${package} -C ${webDir}/
env一般是dev和test环境,假如location是:index,结果是生成目录: /data/website/dev/index,解压缩tar包到这个目录下。
在开发环境,偶尔会出现所有的前端静态目录都被删除的情况,即:/data/website/dev目录被干掉了。真是狗血,所有的前端得全部构建部署一遍。
经过排查,原来是这里的问题:
mkdir -p ${webDir} && rm -rf ${webDir}/