• Jenkins(笔记)


    一、持续部署、持续集成、持续交付

    1.1 持续部署

    与之相关的是系统测试(功能+非功能)。

    • 部署:将我们的代码放在服务器上,能够成功运行可用。
    • 持续部署:我们持续开发,开发的内容不断的部署在服务器上,

    1.2 持续集成

    与之相关的是集成测试。

    • 集成:为了效率,不同组、人开发不同模块,最后把各个模块组合起来,然后测试。
    • 持续集成:随着开发,不断地组合新模块,进行测试。

    1.3 持续交付

    与之相关的是交付测试(验收测试)。

    • 交付:将做好的项目交付给用户。
    • 持续交付(小版本快速迭代):不断的将修改的成品交给用户,不断贴近用户需求,改进体验。

    二、Jenkins与Hudson

    目前流行的自动化部署工具。

    • Jenkins与Hudson:甲骨文与开源社区关系破裂后,形成的两个独立项目。因此非常相似

    由这些工具,帮助我们整合部署Git上的代码。

    2.1 手动部署的缺点

    提交或推送
    检出
    打包
    部署
    测试/使用
    开发人员
    Git仓库
    源码
    war/jar包
    Tomcat服务器
    测试人员/最终用户
    • 在频繁修改情况下,过于麻烦了。
    • 手动整合代码很麻烦

    2.2 自动部署

    • 通过“钩子”程序,检测到对应的事件发生(比如某个特定用户上传了代码)
    • 通知Jenkins 调用Git/SVN插件、Maven插件、Deploy to web container 插件
    • 完成获取源码、打包、部署的过程

    三、Jenkins + Gitee 持续集成环境搭建

    笔者用的是centos 7
    安装可以参考如下文章
    CentOS 7安装Jenkins

    如果启动超时,可能是因为连接的是Google的原因,在安装目录下的updates/default.json文件中,把

    “connectionCheckUrl”:“http://www.google.com/”
    改为
    “connectionCheckUrl”:“http://www.baidu.com/”
    注意,似乎重新启动的时候会自动还原为goolge,当启动很久的时候可以检查一下

    可以用如下命令来查找,也可以用通过rpm查找安装路径

    sudo find -name jenkins

    笔者位置如下
    在这里插入图片描述

    安装完需要的插件之后,就基本部署完成了。

    在如下位置,找到插件管理,在可选插件处搜索gitee后安装即可
    在这里插入图片描述
    然后进入全局配置
    在这里插入图片描述

    Jenkins所处服务器上的git位置填入(没有的话装一个即可)
    用以下命令找到执行文件

    which git
    在这里插入图片描述
    以及配置Maven的settings
    在这里插入图片描述
    还有配置一下JDK
    在这里插入图片描述

    还有MAVEN
    在这里插入图片描述

    然后在系统配置处,找到gitee配置
    在这里插入图片描述

    按照提示创建连接即可,最后测试一下能不能连上。

    点击新建
    在这里插入图片描述
    自由构建
    在这里插入图片描述
    选用我们之前创建的连接
    在这里插入图片描述

    然后将仓库连接+登录 用的账号密码放入对应位置即可
    仓库地址
    在这里插入图片描述
    登录用的账户与密码
    在这里插入图片描述
    使用的分支
    在这里插入图片描述
    此处就是进行自动构建的触发器,即当满足触发条件后,自动集成+部署我们的项目
    在这里插入图片描述

    图方便的话可以直接用这个,每次一访问这个URL,就自动构建
    同时,有详细的更新策略,可以自己设置
    在这里插入图片描述

    构建时做什么
    在这里插入图片描述
    构建也选择我们的Maven
    目标就是我们用的clean install一类的,空格隔开即可
    在这里插入图片描述

    点击构建即可
    第一次构建因为要下包,可能会很久。
    在这里插入图片描述

    Jenkins用天气图标表示构建的情况。

    我们接下来,去下载部署在Tomcat上的插件即可。安装后,在部署后操作可以看到选项。

  • 相关阅读:
    86579-06-8,十七肽KAERADLIAYLKQATAK
    生态系统服务——土壤保持量分布数据
    155. 最小栈
    python代码规范PEP 8——常见的规范错误与解决办法
    mybatis二级缓存默认未开启源码解读
    深度学习图像增强和模型微调
    广汽传祺E9上市,3DCAT实时云渲染助力线上3D高清看车体验
    【Django学习】(十四)自定义action_router
    程序员工作三年攒多少钱合适?
    通过实例讲清楚MongoDB九种聚合操作
  • 原文地址:https://blog.csdn.net/weixin_46949627/article/details/126201448