当前位置: 首页 > article >正文

Jenkins 自动化测试

1、【常规】SVN 服务搭建

1.1、安装 Subversion

sudo yum install y subversion

        安装完成后,可以通过以下命令验证安装是否成功:

svnserve --version

1.2、创建SVN仓库

        安装完成 SVN 服务后,默认是没有任何仓库内容的。需要先手动创建一个存储仓库,如下所述:

指定位置用于存放所有的SVN仓库:

#这里指定 var 路径下,实际使用可以放到盘开机富余的目录下
sudo mkdir /var/svn

创建示例存储库:

[root@blnp ~]# svnadmin create /var/svn/testRepo
[root@blnp ~]#

1.3、配置 SVN 仓库权限

        默认情况下,SVN仓库没有任何权限设置,你需要手动配置权限,每个仓库都有一个conf目录,其中包含三个重要的配置文件:authz、passwd和svnserve.conf。

1.3.1、配置用户密码

        编辑passwd文件来设置SVN的用户名和密码:

sudo vi /var/svn/your_repository_name/conf/passwd

        通过添加以下内容的方式来新增管理用户信息。

1.3.2、配置用户权限

        编辑authz文件来设置用户的访问权限:

sudo vi /var/svn/your_repository_name/conf/authz

        添加如下行来设置用户权限:

        在这个例子中,developers组有读写权限,readers组只有读权限。

1.3.3、配置 SVN 服务

        编辑svnserve.conf文件来启用前面配置的用户和权限设置:

sudo vi /var/svn/your_repository_name/conf/svnserve.conf

        找到并取消注释以下行:

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository

1.4、启动 SVN 服务

        使用svnserve来启动SVN服务:

sudo svnserve -d -r /var/svn/

        d选项表示在后台运行,r选项指定SVN仓库的根目录。

1.5、配置防火墙

        如果你的服务器启用了防火墙,你需要确保SVN服务的端口(默认为3690)是开放的,你可以使用firewallcmd来开放端口:

sudo firewall-cmd --zone=public --permanent --add-port=3690/tcp
sudo firewall-cmd --reload

1.6、访问 SVN 仓库

        使用 SVN 客户端访问SVN仓库:

        若是访问时,提示以下信息。可以参看该文章进行排查:SVN配置错误:认证无效解决方案-CSDN博客

        授权验证通过后,即可查看到svn仓库的内容信息。

1.7、仓库检出&提交

        在本地检出仓库后,若新建仓库未新建内容则默认是个空目录只有 .svn 目录的配置信息。

2、【快速】SVN 服务搭建

源码地址:svnWebUI: svn服务端web图形化管理系统, 搭建svn服务器的神器.

        通过搭建开源的 SVN WebUi 服务即可在服务器上快速搭建一个SVN服务端,并且配备相应的管理后台,可大大简化日常的常规操作。

2.1、docker 方式搭建

        这里为了方便是直接使用docker 的方式来快速搭建使用的,前提是服务器上需提前安装好docker 环境。

安装docker:

一篇文章完成Centos7安装docker-CSDN博客

拉取镜像:

docker pull registry.cn-hangzhou.aliyuncs.com/cym19871102/svnwebui:latest

启动镜像服务:

docker run -itd -v /home/svnWebUI:/home/svnWebUI -e BOOT_OPTIONS="--server.port=6060" --privileged=true -p 6060:6060 -p 3690:3690 registry.cn-hangzhou.aliyuncs.com/cym19871102/svnwebui:latest

2.2、访问管理后台

        访问地址:http:[服务器IP]:6060 后创建用户并登录后,即可显示如下内容:

        如需要创建仓库、用户或者授权可以直接在当前管理后台上操作,可以大大提升效率。

3、Jenkins 服务搭建

3.1、前置准备

3.1.1、安装JDK

#下载rpm镜像
wget https://download.oracle.com/java/17/archive/jdk-17.0.6_linux-x64_bin.rpm

#安装镜像
yum install -y jdk-17.0.6_linux-x64_bin.rpm

#验证结果
java -version

3.2、安装 Jenkins 

        根据需要选择具体的版本进行安装:Index of /jenkins/redhat-stable/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

#先下载ca-certificates,防止报证书过期问题,再下载包
yum install -y ca-certificates
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.375.4-1.1.noarch.rpm

直接安装 rpm 包:

[root@blnp ~]# ls
anaconda-ks.cfg  jenkins-2.440.1-1.1.noarch.rpm
[root@blnp ~]# rpm -ivh jenkins-2.440.1-1.1.noarch.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:jenkins-2.440.1-1.1              ################################# [100%]
[root@blnp ~]#

3.3、启动 Jenkins 

systemctl start jenkins && systemctl status jenkins

3.4、访问 Jenkins

防火墙:

#1. 关闭防火墙
systemctl stop firewalld 

#2. 防火墙开放8080端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
systemctl restart firewalld   #重启

查看登录密码:

#查看默认登录密码
cat /var/lib/jenkins/secrets/initialAdminPassword

        打开浏览器访问:http://192.168.56.100:8080/ 记得换成自己的IP地址,如下图所示:

        填入上文查询取得的密码进行后台登入。

3.5、端口、权限修改

#修改端口,用户权限,
vim /usr/lib/systemd/system/jenkins.service

3.6、插件下载安装

  • Deploy to container(支持自动化将代码部署到tomcat容器)
  • Maven Integration(jenkins 利用maven编译,打包,所需插件)
  • Node.js(打包前端vue项目所需插件)
  • Git (git插件,从托管平台拉取代码)
  • GiteeorGithuborGitlab(托管平台插件)
  • Publish Over SSH(ssh传输到另一台服务器)

3.7、中文设置

        需反复重启几次才能完全汉化完整!!


http://www.kler.cn/a/539044.html

相关文章:

  • 信息科技伦理与道德3-2:智能决策
  • vue学习5
  • 【电机控制器】STC8H1K芯片——低功耗
  • 使用 SDKMAN! 在 Mac(包括 ARM 架构的 M1/M2 芯片)上安装 Java 8
  • 网络安全:挑战、技术与未来发展
  • 响应式编程_05 Project Reactor 框架
  • 游戏引擎学习第92天
  • 基于STM32HAL库的万年历系统
  • 【开源免费】基于SpringBoot+Vue.JS乐享田园系统(JAVA毕业设计)
  • 数据库创库建表处理
  • 人工智能-A*算法与卷积神经网络(CNN)结合实现路径规划
  • 四边形网格处理——沿Edge遍历 矩形域顶点提取
  • TestContext 框架核心机制详解
  • PHP中的魔术方法
  • 激活函数和激活函数汇总
  • 滑动窗口核心算法解决字符串问题(最小覆盖子串/字符串排列/异位词/最长无重复子串)
  • [vue3] Ref Reactive
  • 如何在Python中使用内置函数
  • 【Golang学习之旅】Go + Redis 缓存设计与优化(项目实战)
  • 2.9学习总结
  • 从零开始了解人工智能:核心概念、GPT及 DeepSeek 探索
  • 使用cursor开发python调用deepseek本地模型实现本地AI对话
  • 如何学习多智能体系统协调(如自动驾驶车协同避让)
  • Linux:安装 node 及 nvm node 版本管理工具(ubuntu )
  • jvm view
  • 【LeetCode Hot100 堆】第 K 大的元素、前 K 个高频元素