持续集成的学习(jenkins)

Jenkins :持续集成和交付工具

它就是一个执行命令的工具,任何可以在终端当中执行的都可以使用这个工具进行执行。

功能

  1. 自动化构建(git 、svn):自动发布的功能
  2. 持续集成:不断的去做某个操作(发布、验证)
  3. 测试和报告:allure
  4. 很多对应的插件可以使用。

快速入门

安装

  1. 安装

    Jenkins download and deployment

  2. 启动jar包

    java -jar 文件名

  3. 访问127.0.0.1:8080,密码在cmd界面处

  4. 安装推荐的插件即可

  5. 设置用户名和密码

简单应用

  1. 构建任务
  2. 设置构建脚本(windows用批处理命令)
  3. 构建项目
  4. 查看控制台输出
jenkin拉取git代码

方法1:直接填写命令进行拉取

方法2:使用源码管理插件拉取代码

  1. 安装好git插件

  2. 配置git地址

  3. 添加gitee账号

  4. 构建查看工作空间,是否拉取代码

Jenkins常用场景-构建触发器

Jenkins定时构建项目

利用定时构建,跑对应的脚本

  1. cron表达式生成

    https://cron.qqe2.com/

  2. 构建触发器利用

Jenkins项目关联触发

模拟:例如说开发构建完成之后,自动执行对应的脚本

  1. 选用复制旧项目,新建一个项目

  2. 设置关联项目自动执行后构建

3.等待关联项目自动执行即可(关联项目配置定时)

触发远程构建及Gogs的应用

触发远程构建简单理解:当你的代码有更新的时候,希望Jenkins能够自动执行。但是因为对于Jenkins的触发远程构建触发,需要使用Webhook(钩子函数)要在同一个网络中。而像Gitee、GitLab、GitHub都是属于公共仓库,因此我们一般对应的源代码都在本地的仓库当中(包括很多同学都是内网的情况),所以常使用Gogs作为一个轻量级的自托管Git服务。

Gogs作为一个轻量级、易于部署和使用的自托管Git服务,为小型团队和个人开发者提供了一个简单而强大的版本控制解决方案。

  1. Gogs安装并启动
    1. 根据你的系统选择安装包并且解压,放在非中文目录下;
    2. 进入到目录,输入: gogs web 即能启动服务;
    3. 待启动完毕之后,直接访问: http://127.0.0.1:3000/ 即可打开。
  2. gogs启动及应用
  3. gogs项目构建
  4. 创建项目并上传到gogs上
  5. Gogs结合Jenkins进行构建
  6. Gogs结合Jenkins触发远程构建
    1. 进入到Gogs的:gogs\custom\conf\app.ini文件底部添加数据并且重启 Gogs

      #127.0.0.1 为Jenkins的IP地址
      LOCAL_NETWORK_ALLOWLIST = 127.0.0.1

    2. 安装插件Generic Webhook Trigger

    3. 在Jenkins中 构建触发器 -勾选 Generic Webhook Trigger 并且随意填写 token值

    4. gogs设置钩子函数

    5. 当你的Gogs的代码更新,你可以在Jenkins看到项目被调用了。

阶段总结

Git

本地仓库和远程仓库的管理工具

本地仓库 ---》个人电脑里面的某个文件夹(里面包含一个隐藏文件夹 .git)

Gogs/Gitee

远程仓库的存在(还有github,gitlab)

作用就是:存在一个网络环境,通过访问网络位置对仓库内的内容进行增删改查

Jenkins

jenkins是一个帮我们运行命令的工具

jenkins调用部署操作系统的命令行工具

场景:命令运行的先后关系管理

运行模式:触发式,定时,等等很多触发模式

测试人员常用的持续集成流程

回归测试(开发二次代码提交)

日常监控

相关推荐
晓幂1 天前
【2025】HECTF
笔记·学习·web安全
慕云紫英1 天前
基金申报的一点经验
学习·aigc
微露清风1 天前
系统性学习C++-第十八讲-封装红黑树实现myset与mymap
java·c++·学习
宝贝儿好1 天前
【强化学习】第六章:无模型控制:在轨MC控制、在轨时序差分学习(Sarsa)、离轨学习(Q-learning)
人工智能·python·深度学习·学习·机器学习·机器人
大、男人1 天前
python之asynccontextmanager学习
开发语言·python·学习
做cv的小昊1 天前
【TJU】信息检索与分析课程笔记和练习(8)(9)发现系统和全文获取、专利与知识产权基本知识
大数据·笔记·学习·全文检索·信息检索
盐焗西兰花1 天前
鸿蒙学习实战之路-蓝牙设置完全指南
学习·华为·harmonyos
hkNaruto1 天前
【AI】AI学习笔记:MCP协议与gRPC、OpenAPI的差异
人工智能·笔记·学习
笨鸟笃行1 天前
0基础小白使用ai能力将本地跑的小应用上云(作为个人记录)
人工智能·学习
Nan_Shu_6141 天前
学习: Threejs (1)
javascript·学习