赞
踩
安装
yum -y install subversion
查看版本
svnserve --version
添加svn运行用户
groupadd svn
useradd -g svn -s /sbin/nologin svn
添加svn版本库目录,并授权svn用户权限
mkdir -p /opt/svndata
chown -R svn.svn /opt/svndata
创建svn版本库
svnadmin create /opt/svndata/jicki
设置SVN用户和密码(用户:lfc 密码:lfc)
cd /opt/svndata/jicki/conf
vim passwd
设置用户权限
vim authz
设置用户lfc读写权限,其他用户没有权限
[/]
lfc=rw
*=
设置配置文件
vim svnserve.conf
打开下面的5个注释,前面不要留空格
anon-access = none #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /opt/svndata/jicki # 认证空间名,版本库所在目录
启动svn
svnserve -d -r /opt/svndata/jicki
#关闭
killall svnserve
下载地址:http://maven.apache.org/download.cgi
tar zxvf apache-maven-3.8.1-bin.tar.gz
添加环境变量 vi /etc/profile
export MAVEN_HOME=/usr/local/apache-maven-3.8.1
export PATH=$MAVEN_HOME/bin:$PATH
使设置生效
source /etc/profile
查看是否安装成功
mvn -v
官网地址:http://jenkins-ci.org/
下载最新版本:http://mirrors.jenkins-ci.org/war/latest/jenkins.war
将在下载的enkins.war 放到Tomcat的webapps目录下
启动tomcat
cd /usr/local/apache-tomcat-8.5.57/bin
./startup.sh
http://47.110.157.82:8080/jenkins/
得到密码
cat /root/.jenkins/secrets/initialAdminPassword
这里我就使用admin,不创建用户了
安全配置
全局工具配置
安装插件
SVN插件安装
安装deploy
添加svn项目路径
添加svn用户名密码
构建项目后查看工作空间
远程服务器Tomcat配置(这个实在另外一台服务器上)
在/etc/profile设置环境变量:vim /etc/profile
export TOMCAT_HOME= /usr/local/apache-tomcat-8.5.57/
在tomcat-users.xml中添加用户和角色
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="tomcat_user" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status"/>
修改webapps/manager/META-INF/context.xml替换如下内容
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>
设置构建后触发连接远程Tomcat
点击“”立即构建“”后项目war包被上传到远程Tomcat服务器中
访问项目
构建触发器
浏览器触发构建
http://47.110.157.82:8080/jenkins/job/aaa/build?token=LFC_NAME
命令行构建
curl -X post -v -u Jenkins用户:密码 http://47.110.157.82:8080/jenkins/job/aaa/build?token=LFC_NAME
创建钩子函数构建
#进入到svn仓库的hooks目录
cd /opt/svndata//jicki/hooks
#复制一份post-commit.tmpl文件作为我们的钩子函数文件
cp post-commit.tmpl post-commit
注释post-commit里的所有内容添加钩子程序
curl -X post -v -u Jenkins用户:密码 http://47.110.157.82:8080/jenkins/job/aaa/build?token=LFC_NAME
修改文件权限
chmod 755 post-commit
为了获取最新的SVN的内容在SVN路径后面添加@HEAD
修改项目并提交,项目重新部署
rm -rf jenkins
rm -rf jenkins.war
rm -rf /root/.jenkins/
补充:
如果防止跨站点请求访问伪造没有勾选,钩子程序需要带crumb参数
获取crumb值
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。