Jenkins 自动化测试

1、【常规】SVN 服务搭建

1.1、安装 Subversion

bash 复制代码
sudo yum install y subversion

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

bash 复制代码
svnserve --version

1.2、创建SVN仓库

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

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

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

创建示例存储库:

bash 复制代码
[root@blnp ~]# svnadmin create /var/svn/testRepo
[root@blnp ~]#

1.3、配置 SVN 仓库权限

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

1.3.1、配置用户密码

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

bash 复制代码
sudo vi /var/svn/your_repository_name/conf/passwd

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

1.3.2、配置用户权限

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

bash 复制代码
sudo vi /var/svn/your_repository_name/conf/authz

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

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

1.3.3、配置 SVN 服务

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

bash 复制代码
sudo vi /var/svn/your_repository_name/conf/svnserve.conf

找到并取消注释以下行:

bash 复制代码
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository

1.4、启动 SVN 服务

使用svnserve来启动SVN服务:

bash 复制代码
sudo svnserve -d -r /var/svn/

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

1.5、配置防火墙

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

bash 复制代码
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博客

拉取镜像:

bash 复制代码
docker pull registry.cn-hangzhou.aliyuncs.com/cym19871102/svnwebui:latest

启动镜像服务:

bash 复制代码
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

bash 复制代码
#下载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

bash 复制代码
#先下载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 包:

bash 复制代码
[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

bash 复制代码
systemctl start jenkins && systemctl status jenkins

3.4、访问 Jenkins

防火墙:

bash 复制代码
#1. 关闭防火墙
systemctl stop firewalld 

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

查看登录密码:

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

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

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

3.5、端口、权限修改

bash 复制代码
#修改端口,用户权限,
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、中文设置

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

相关推荐
卜及中1 小时前
【Go语言快速上手】第一部分:Go 语言基础
运维·开发语言·学习·golang·go
垚垚 Securify 前沿站1 小时前
解锁反序列化漏洞:从原理到防护的安全指南
运维·网络·安全·web安全·系统安全
ChineHe3 小时前
Jenkins基础篇 - Jenkins介绍与安装示例
linux·运维·服务器·jenkins
千夜啊3 小时前
基于keepalived+GTID半同步主从复制的高可用MySQL集群
运维
泥土编程4 小时前
Linux 命令
linux·运维
熬夜苦读学习5 小时前
文件基础IO
linux·运维·数据库
北京华人开创公司5 小时前
京准:NTP卫星时钟服务器对于DeepSeek安全的重要性
运维·服务器·安全·卫星时钟服务器·ntp时间服务器·网络时间同步·网络时间服务器
鹧鸪云光伏与储能软件开发6 小时前
鹧鸪云无人机光伏运维解决方案
运维·无人机