使用jenkins实现自动拉取码云代码,实现自动化部署

简介: 紧接着上文说起,咱们这次来完成基于jenkins的自动化部署,也就是当有新的代码推送就会触发自动构建。上一节我们已经实现了手动部署,大部分基础配置都已完成,不了解的可以先回顾下。。。。 基于jenkins实现手动拉取码云代码,实现半自动化部署要实现自动化部署,其实这部分操作非常简单,只需要配置好构建触发器以及触发的事件即可。

紧接着上文说起,咱们这次来完成基于jenkins的自动化部署,也就是当有新的代码推送就会触发自动构建。

上一节我们已经实现了手动部署,大部分基础配置都已完成,不了解的可以先回顾下。。。。 基于jenkins实现手动拉取码云代码,实现半自动化部署

要实现自动化部署,其实这部分操作非常简单,只需要配置好构建触发器以及触发的事件即可。

本文要达到的具体目标:使用jenkins实现自动化部署

ps:我的服务器:CentOs8 Linux

计划了几个想要达到的目标

  • 在自己的机器上跑起来 done
  • 使用jenkins将码云上的git仓库拉到服务器 done
  • 将代码拉到服务器后,可以手动触发构建、部署 done
  • 完成自动化部署 done
  • 开发一个自己的插件,具体做啥还没想好
  • 待定...

触发器配置


打开一个我们创建好的项目,打开任务配置的触发器构建选项:Configure -> Build Triggers 选项卡

53dff30b018074b6b3865253f4fe89e6_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

Enabled Gitee triggers 勾选你所需要的构建触发规则, 如 Push Event, Opened Merge Request Events,勾选的事件会接受WebHook,触发构建。

目前支持触发事件有:

  • Push Events :推送代码事件
  • Opened Merge Request Events :提交 PR 事件
  • Updated Merge Request Events :更新 PR 事件
  • Accepted Merge Request Events :接受/合并 PR 事件
  • Closed Merge Request Events :关闭 PR 事件
  • Approved Pull Requests :审查通过 PR 事件
  • Tested Pull Requests :测试通过 PR 事件

Enable [ci-skip] 该选项可以开启支持 [ci-skip] 指令,只要commit message 中包含 [ci-skip],当前commit 即可跳过构建触发。

目前我自己只选择了 Push Events和提交PR事件,其他的暂时还不用不到。

另外还可以设置webHook验证token,其中 Secret Token for Gitee WebHook 该选项可以配置 WebHook 的密码,该密码需要与 Gitee WebHook配置的密码一致方可触发构建。

拿到触发器URL


在上一步其实已经能拿到 gitee WebHook URL,这里着重说下。

打开 Configure -> Build Triggers 选项卡,地址已生成好。

f048a19cc2bf2a18e7d4ef3f5b211ae6_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

仓库关联


我们需要将上面的 WEBHOOK URL 和对应的仓库进行关联。

打开码云中的仓库,进入 设置(settings) -> WebHooks

  • 添加 WebHook, URL 填写上一步我们得到的 WEBHOOK URL
  • 密码填写:如果在Jenkins中配置了WebHook密码,不设密码可以不填
  • 勾选 PUSH, Pull Request 事件
  • 测试推送触发构建
    在Gitee 仓库的 WebHook 中选择勾选了PUSH的 WebHook 点击测试,观察 Jenkins 任务的构建状态
    在Gitee 仓库中编辑一个文件并提交,观察 Jenkins 任务的构建状态
    af1dc7f057a84a1e9d83dc0ca8f72bce_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png
目录
相关文章
|
2月前
|
jenkins Java 持续交付
运用Jenkins实现Java项目的持续集成与自动化部署
在新建的Jenkins Job中,我们需要配置源码管理,通常选择Git、SVN等版本控制系统,并填入仓库地址和凭据。接着,设置构建触发器,如定时构建、轮询SCM变更、GitHub Webhook等方式,以便在代码提交后自动触发构建过程。
113 2
|
11天前
|
jenkins Java 持续交付
【一键搞定!】Jenkins 自动发布 Java 代码的神奇之旅 —— 从零到英雄的持续集成/部署实战秘籍!
【8月更文挑战第9天】随着软件开发自动化的发展,持续集成(CI)与持续部署(CD)已成为现代流程的核心。Jenkins 作为一款灵活且功能丰富的开源 CI/CD 工具,在业界应用广泛。以一家电商公司的 Java 后端服务为例,通过搭建 Jenkins 自动化发布流程,包括创建 Jenkins 项目、配置 Git 仓库、设置构建触发器以及编写构建脚本等步骤,可以实现代码的快速可靠部署。
34 2
|
6天前
|
jenkins 持续交付 开发工具
自动化开发之旅:Docker携手Jenkins,与Git和Tomcat共舞持续集成
【8月更文挑战第13天】在软件开发中,持续集成(CI)通过自动化构建、测试与部署提升效率与稳定性。Docker、Jenkins、Git和Tomcat构成CI的黄金组合:`git push`触发Jenkins作业,利用Docker确保环境一致性,最终将应用部署至Tomcat。首先配置Git Webhooks以触发Jenkins;接着在Jenkins中创建作业并使用Docker插件模拟真实环境;通过Maven构建项目;最后部署至Tomcat。这套流程减少人为错误,提高开发效率,展示了技术的力量与流程的革新。
18 0
|
6天前
|
jenkins Java 持续交付
自动化魔法:用Jenkins打造Java项目的持续部署流水线
【8月更文挑战第13天】在软件开发中,自动化部署是提高效率与减少错误的关键。Jenkins作为一款强大的持续集成工具,支持Java项目的自动化构建、测试与部署。通过配置Jenkins及其丰富的插件生态(如Git和Maven插件),可实现从代码提交到上线的全自动化流程。此流程包括从GitHub自动拉取代码、使用Maven构建项目,并通过如`mvn clean install`命令执行构建,最后利用插件如“Publish Over SSH”将制品部署至远程服务器。此外,还可配置邮件通知等后处理动作确保发布的稳定可靠。借助Jenkins,开发者能显著加速软件交付周期,同时减少手动操作带来的风险。
23 0
|
1月前
|
前端开发 jenkins 持续交付
不是Jenkins玩不起,而是脚本更有性价比,在1Panel中使用Node搭建前端自动化
不是Jenkins玩不起,而是脚本更有性价比,在1Panel中使用Node搭建前端自动化
47 2
|
1月前
|
Kubernetes Serverless 开发工具
代码提交即部署:Argo Workflows与EventBridge构建自动化CI
ACK One Serverless Argo工作流和EventBridge简单快速、高效、低成本地交付您的应用,为您实现代码提交即构建/交付的自动化CI系统。
|
2月前
|
运维 监控 Devops
基础设施即代码(IaC):自动化运维的新纪元
【6月更文挑战第21天】基础设施即代码(IaC)是将基础设施配置转为代码,实现自动化和标准化运维的实践。它通过文本文件描述基础设施,保证重复性、一致性和自动化部署。IaC提升效率,降低成本,加速产品上市,增强安全性和可移植性,在配置管理、环境管理、CI/CD及监控告警中发挥关键作用,推动DevOps和云时代的创新。
|
1月前
|
监控 网络协议 安全
由于楼层自动化系统的复杂性和多样性,很难给出一个通用的Python代码示例,因为每个系统可能使用不同的硬件、通信协议和软件接口。
由于楼层自动化系统的复杂性和多样性,很难给出一个通用的Python代码示例,因为每个系统可能使用不同的硬件、通信协议和软件接口。
|
1月前
|
Java jenkins 持续交付
Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试
【7月更文挑战第1天】Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试。成功后,Jenkins执行部署任务,发布到服务器或云环境。使用Jenkins能提升效率,保证软件质量,加速上线,并需维护其稳定运行。
83 0
|
2月前
|
jenkins Java 持续交付

热门文章

最新文章