gitlab ci自动化构建与部署常用配置 - npm 管理的下前端项目
这篇讲的是webpack 管理的项目,基本上也没太大区别。在使用 Gitlab CI 进行自动化构建部署的时候,需要新建一个 .gitlab-ci.yml配置文件,里面是我们自动化构建的具体步骤的脚本:
image: node:8
stages:
- build
- deploy
- prod
build:
stage: build
script:
- pwd
# 可以设置 npm镜像
- npm config set registry https://registry.npm.taobao.org
#- npm install --verbose 调试时开启 --verbose
- npm install
- npm run build
# # 即指定运行的runner节点,这里在gitlab管理端可以配置,并且需要给项目开启使用
tags:
- docker
# 编译后有产物,所以要指定下过期时间和路径, 以供于其他阶段使用
artifacts:
expire_in: 1 days # 保留一天
paths:
- dist/** # 保存的文件
#允许失败
allow_failure: false
deploy:
stage: deploy
needs: # 该阶段需要的先前条件
- job: build # 需要build 阶段完成并且有产物
artifacts: true
only:
- master
tags:
- Grid
script: # 执行的构建、部署脚本
- pwd
- # 前端一般使用nginx部署项目,可以直接讲部署目录下的文件备份然后替换,或者直接替换
prod:
stage: prod
needs: # 该阶段需要的先前条件
- job: build # 需要build 阶段完成并且有产物
artifacts: true
only:
- release
tags:
- docker
script:
- # 如果不是在本地的服务器,远程的可以使用一些scp 命令或者ssh 远程执行命令,或者服务器上配置脚本,自动检测程序等自动化部署