持续集成04--Jenkins结合Gitee创建项目

前言

在持续集成/持续部署(CI/CD)的旅途中,Jenkins与版本控制系统的紧密集成是不可或缺的一环。本篇"持续集成03--Jenkins结合Gitee创建项目"将引导如何将Jenkins与Gitee(一个流行的Git代码托管平台)相结合,以自动化地处理代码提交后的构建、测试等流程。通过本文,将学会如何在Jenkins中配置Gitee仓库,创建并配置Jenkins项目。

1、新建项目

进入Jenkins首页,点击新建item,输入任务名称,选择Freestyle project,点击确定。

2、项目配置

2.1、源码配置

2.1.1、添加远程仓库地址

新建成功后点击项目配置页(configure)--源码管理(Source Code Management)--Repository URL输入我们Gitee仓库地址。

2.1.2、配置Gitee凭据

选择git;Credentials点击添加,配置gitee凭证

在我们复制Gitee仓库地址时有个提示:安全考虑,建议使用私人令牌;Jenkins凭证常用的有三种:账号密码、api令牌、ssh-key;Git仓库的credentials 只能选择ssh key 或者用户名密码的凭据,gitee api token的凭据只是给触发器用的;所以需要单独为git源码管理插件配置ssh key 或者用户名密码凭据,二者选其一即可。

  • 凭证:账号秘密配置

如果不考虑安全的情况下,账号密码配置最为便捷;类型选择username with password,填写gitee的登录账号和密码进行保存

凭证:ssh-key配置

复制服务器git ssh-key公钥:cat /root/.ssh/id_rsa.pub,粘贴到gitee--设置--安全设置SSH公钥内

复制服务器git ssh-key私钥:cat /root/.ssh/id_rsa;Jenkins凭证类型选择ssh,填写git账号名,勾选enter directly,将私钥粘贴到凭证内,保存

注意:如果选择ssh链接,仓库url则需要填写ssh方式

2.1.3、指定构建分支

分支栏为空时默认的是master分支,填写我们需要拉取的分支代码

3、构建项目

配置完成后,点击保存,我们便可以尝试构建项目;点击build now进行项目的构建;点击构建历史--控制台输出可以查看构建进程日志;进入工作空间可以查看拉取代码详情信息

4、执行代码

进入项目配置页--build setps--增加构建步骤--选择Execute shell,编写shell脚本,主要是安装需要的python库和运行程序;保存后,进行构建,查看日志代码执行成功

bash 复制代码
#!/bin/bash
# 安装项目所需Python库
pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
# 运行程序入口main文件(注意main文件win环境和linux环境的区别)
python3 main_run.py

总结

通过"持续集成03--Jenkins结合Gitee创建项目"的学习,基本成功掌握了将Jenkins与Gitee集成,实现自动化CI/CD流程的关键步骤。Jenkins与Gitee的紧密合作,不仅提高了代码提交后的处理效率,还确保了软件质量的持续监控与提升。现在,每当Gitee仓库中有新的代码提交时,我们都可以通过Jenkins构建、测试等拉取代码,为团队提供了强大的自动化支持。随着对Jenkins与Gitee集成的进一步深入,将能够探索更多高级功能,如代码质量分析、安全扫描等,以全面提升软件开发的效率与质量。

相关推荐
秦渝兴10 小时前
GitLab CI/CD 流水线实战
ci/cd·gitlab
gs8014011 小时前
告别 CI/CD 误伤与红条:Docker 镜像智能清理与优雅防冲突实战
ci/cd·docker·容器
leeyi14 小时前
DDD 六条铁律:让 CI 替你骂人——go-arch-lint 门禁实战(第104篇)
ci/cd·agent·领域驱动设计
算法大模型备案干货咪15 小时前
《把内容安全做成CI卡点:AIGC合规的工程化落地》
安全·ci/cd·aigc
lingran__17 小时前
Git 完全指南(三):远程仓库与标签管理
开发语言·git·gitee·ssh·团队协作·远程仓库·分布式版本控制
code 小楊18 小时前
生产级 Agent 评测体系实战:从 12 指标框架到 CI/CD 质量门禁全链路落地
大数据·人工智能·ci/cd
X1A0RAN18 小时前
Jenkins 流水线跨阶段的数据共享:让变量“动态更新“成为可能
java·servlet·jenkins
Ningcode_cloud2 天前
什么是CICD? GitLab + Jenkins 持续集成实战部署手册
运维·ci/cd·云原生·容器·gitlab·jenkins
tianyuanwo2 天前
Jenkins 邮件插件选型指南:从命名原理到场景实践
jenkins·plugin·email
姚永强2 天前
安装Jenkins
运维·jenkins