经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 软件/图像 » Git » 查看文章
自动化部署(Gitlab)
来源:cnblogs  作者:晚秋时节  时间:2023/5/8 11:32:31  对本文有异议

小程序可持续化自动部署

一、安装gitlab-runner

官方地址:https://docs.gitlab.com/runner/install/
image

windows安装如下:
nodejs的环境变量一定要放到系统变量中!!!

  1. 进入硬盘任意一个目录,下载gitlab-runner.exe文件,根据电脑是64位还是32位下载
  2. cd 到文件所在目录中,进行注册。命令:./gitlab-xxx-xxx.exe register 注意:一定要用管理员权限启动powershell
  3. 根据提示输入URL、token、描述等,其中URL、token在项目中找,具体如图:
    image
  4. 注册中有一步,输入runner执行程序。Please enter the executor:
    选择shell
  5. 至此,runner已经启动好了,可查看状态进行进一步确认。
    a. ./gitlab-xxx-xxx.exe verify 查看runner状态
    alive代表启动状态
    image
    b. ./gitlab-xxx-xxx.exe restart 重启runner
  6. 注册完毕后,回项目中,查看runners是否存在。绿色代表注册成功,红色代表失败
    image
  7. 进入runner安装目录,打开config.toml 文件
    runner官方链接:https://docs.gitlab.com/runner/executors/
    image

二、.gitlab-ci.yml

文件字段详细描述在官方ci。大家可自行查看

  1. # 任务阶段 没有定义的话 默认式test阶段 名称、个数自定义
  2. # 从上到下依次执行,如果某个任务失败了,一般情况下不会继续往下执行
  3. stages:
  4. - load # 安装项目依赖
  5. - test-build # 测试打包
  6. - test-deploy # 测试部署
  7. - prod-build # 生产打包
  8. - prod-deploy # 生产上传部署
  9. # 缓存
  10. # 由于下一个任务执行会把上一个任务产物给删掉,比如node_modules
  11. # 此时cache作用就体现出来了 将需要的文件填写进去
  12. cache:
  13. paths:
  14. - node_modules
  15. - dist
  16. load-job: # 任务名称(名称自定义)
  17. stage: load # 上面stages定义的步骤1
  18. only: # 限制条件 仅develop、release分支执行job
  19. - develop
  20. - release
  21. script:
  22. - echo "开始 cnpm install" # echo 脚本命令 相当于console.log()
  23. - cnpm i # 安装项目依赖
  24. - echo "结束 cnpm install"
  25. test-build-job:
  26. stage: test-build
  27. only:
  28. - develop
  29. script:
  30. - whoami # 显示当前登录的用户名
  31. - pwd # 当前工作目录
  32. - cnpm -v # 查看cnpm版本
  33. - npm run build:test # 测试打包命令
  34. test-deploy-job:
  35. stage: test-deploy
  36. only:
  37. - develop
  38. script:
  39. - pwd
  40. - echo "开启授权-二维码???"
  41. - npm run deploy:test # 测试部署命令
  42. - echo "结束授权-二维码???"
  43. prod-build-job:
  44. stage: prod-build
  45. only:
  46. - release
  47. script:
  48. - whoami
  49. - pwd
  50. - cnpm -v
  51. - echo "开始生产环境打包???"
  52. - npm run build # 生产部署
  53. - echo "结束生产环境打包???"
  54. prod-deploy-job:
  55. stage: prod-deploy
  56. only:
  57. - release
  58. before_script: # script之前执行
  59. - echo "???生产环境上传begin"
  60. script:
  61. - pwd
  62. - npm run deploy:prod # 生产打包
  63. after_script: # script之后执行
  64. - echo "???生产环境上传end"

三、任务进度

image

其中,每个阶段可点进去查看详细日志信息。?代表成功,×代表失败(进入具体阶段查看报错日志信息)

原文链接:https://www.cnblogs.com/yylls/p/17381220.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号