小程序可持续化自动部署
一、安装gitlab-runner
官方地址:https://docs.gitlab.com/runner/install/
windows安装如下:
nodejs的环境变量一定要放到系统变量中!!!
- 进入硬盘任意一个目录,下载gitlab-runner.exe文件,根据电脑是64位还是32位下载
- cd 到文件所在目录中,进行注册。命令:./gitlab-xxx-xxx.exe register 注意:一定要用管理员权限启动powershell
- 根据提示输入URL、token、描述等,其中URL、token在项目中找,具体如图:
- 注册中有一步,输入runner执行程序。Please enter the executor:
选择shell - 至此,runner已经启动好了,可查看状态进行进一步确认。
a. ./gitlab-xxx-xxx.exe verify 查看runner状态
alive代表启动状态
b. ./gitlab-xxx-xxx.exe restart 重启runner - 注册完毕后,回项目中,查看runners是否存在。绿色代表注册成功,红色代表失败
- 进入runner安装目录,打开config.toml 文件
runner官方链接:https://docs.gitlab.com/runner/executors/
二、.gitlab-ci.yml
文件字段详细描述在官方ci。大家可自行查看
# 任务阶段 没有定义的话 默认式test阶段 名称、个数自定义
# 从上到下依次执行,如果某个任务失败了,一般情况下不会继续往下执行
stages:
- load # 安装项目依赖
- test-build # 测试打包
- test-deploy # 测试部署
- prod-build # 生产打包
- prod-deploy # 生产上传部署
# 缓存
# 由于下一个任务执行会把上一个任务产物给删掉,比如node_modules
# 此时cache作用就体现出来了 将需要的文件填写进去
cache:
paths:
- node_modules
- dist
load-job: # 任务名称(名称自定义)
stage: load # 上面stages定义的步骤1
only: # 限制条件 仅develop、release分支执行job
- develop
- release
script:
- echo "开始 cnpm install" # echo 脚本命令 相当于console.log()
- cnpm i # 安装项目依赖
- echo "结束 cnpm install"
test-build-job:
stage: test-build
only:
- develop
script:
- whoami # 显示当前登录的用户名
- pwd # 当前工作目录
- cnpm -v # 查看cnpm版本
- npm run build:test # 测试打包命令
test-deploy-job:
stage: test-deploy
only:
- develop
script:
- pwd
- echo "开启授权-二维码✨✨✨"
- npm run deploy:test # 测试部署命令
- echo "结束授权-二维码✨✨✨"
prod-build-job:
stage: prod-build
only:
- release
script:
- whoami
- pwd
- cnpm -v
- echo "开始生产环境打包✨✨✨"
- npm run build # 生产部署
- echo "结束生产环境打包✨✨✨"
prod-deploy-job:
stage: prod-deploy
only:
- release
before_script: # script之前执行
- echo "✨✨✨生产环境上传begin"
script:
- pwd
- npm run deploy:prod # 生产打包
after_script: # script之后执行
- echo "✨✨✨生产环境上传end"
三、任务进度
其中,每个阶段可点进去查看详细日志信息。✔代表成功,×代表失败(进入具体阶段查看报错日志信息)
标签:gitlab,script,部署,Gitlab,echo,runner,build,自动化,test From: https://www.cnblogs.com/yylls/p/17381220.html