四川省营山县西城建筑公司网站,租服务器 wordpress,外贸新手入门必读,加大门户网站安全制度建设一、构建一个maven项目在jenkins主页上#xff0c;左侧#xff0c;选择“新建”#xff0c;然后填写项目名称#xff0c;选择“构建一个maven项目”二、Git配置保存之后#xff0c;进入详细配置页面#xff1a;这里的源码管理#xff1a;选择git#xff0c;输入代码的g…一、构建一个maven项目 在jenkins主页上左侧选择“新建”然后填写项目名称选择“构建一个maven项目” 二、Git配置 保存之后进入详细配置页面 这里的源码管理选择git输入代码的git地址Credentials填写代码分支默认是*/master主分支 Credentials需要点击Add按钮添加具体的git凭证 ①如果当前git项目配置为通过用户名密码认证则kind选择username with password centos的root用户生成的公钥密钥信息位置信息如下 ②如果用的是公钥私钥的方式则kind需要选择ssh username with private key 在private key里面填写私钥私钥 位置在开通git代码权限时生成 windows下:C:\Users\Administrator\.ssh\id_rsa centos 下 /root/.ssh/id_rsa 文件内容 此时需要把这个id_rsa文件中的所有内容都粘贴到文本框中包括BEGIN RSA PRIVATE KEY和END RSA PRIVATE KEY这两行 三、构建项目触发器 build periodically周期性构建比如每隔十分钟构建一次是通过cron表达式控制的具体可以点击右侧的帮助 poll scm每隔多长时间pull一次代码如果有更新则编译也是通过cron表达式控制的 点击后面的?标识可以查看说明 配置maven编译的pom文件和部署脚本 root pom文件由于现在当前文章中tool代码中的主pom.xml就在根目录下所以root pom直接填写pom.xml 如果不是在根目录下例如toolsamdin项目中的pom.xml文件则root pom直接填写toolsamdin\pom.xml goals and options:这里调用maven的命令clean install如果项目中配置了多套配置文件profile这里需要应用idtest的profile这套配置则此处填写clean install -P test 这里我们简单的测试一下写一个 clean install 点击立即构建 第一次由于要拉代码所以比较慢过了一会之后出现如下变化 这里蓝色的圈表示成功红色表示失败 点击 # 进去之后 点击 Console Output 查看本次构建的输出记录 最底部显示成功如果有错误的话这里会显示失败信息的。 这时候去我们的centos服务器的/root/.jenkins/jobs 目录下查看变化首先多了一个weds-common文件夹这个是根据我们的job的名字创建的。 进入目录中 cd weds-common目录查看 这里是项目的构建记录 进入 cd /root/.jenkins/workspace/ 目录查看 这里多了我们的项目文件夹这个是从我们的git服务器上pull下来的代码 至此本机的拉取构建代码大功告成。 四、构建项目发布到远程linux centos 服务器 点击Post Steps,如图是一个正确的配置,报错可以不管。 其中SSH Server是我们之前在系统设置 Publish over SSH 中设置好的 post steps需要发布到远程linux所以选择 然后填写目标war或jar到远程linux机器上的哪个目录下然后调用远程机器上的shell脚本自动重启tomcat自动备份等功能 其 中Source files的目录是基于当前job的目录(可以从jenkins的安装目录下找到)例如当前job名称为weds-common则对于root用户Source files中的目录是相对于/root/.jenkins/workspace/weds-common目录下的因此如果我们要发送weds-common下的weds-pay项目的war包这里需要填写weds-pay/target/weds-pay.war Remove prefix表示需要移除的目录比如这里填写weds-pay/target则表示发布时只把weds-pay.war发布到远程linux而不包含weds-pay/target目录结构 Remote directory表示需要把编译好的war包发布到远程linux的哪个目录下 Exec command需要执行的shell命令shell命令在远程linux服务器上比如。一般是需要执行停止tomcat复制war到tomcat备份启动tomcat等。 注本人在配置的是soure files 路径填写有问题导致构建的时候 Console Output一直报SSH: Transferred 0 file(s)关于相对路径的问题如果搞不清楚是该相对于谁请看下图 四种第一个截图里的 test.sh的内容该shell命令的作用是备份上传文件删除tomcat中原来的项目文件由于tomcat自动解压缩所以这里删除原来的文件等一小会后会自动上传文件并且解压缩 #!/bin/bash #传参测试脚本 export LANGen_US.UTF-8 PROJECT$1 BAK_DIR/usr/local/autodeploy/bak/$PROJECT TEMP_DIR/usr/local/autodeploy/temp/$PROJECT TOMCAT_HOME/usr/local/tomcat if [ -f $TEMP_DIR/$PROJECT.war ]; then #sleep 3 if [ -f $TOMCAT_HOME/webapps/$PROJECT.war ]; then echo deleteing old war rm -rf $TOMCAT_HOME/webapps/$PROJECT.war rm -rf $TOMCAT_HOME/webapps/$PROJECT else echo old war not exits fi echo copying new war cp $TEMP_DIR/$PROJECT.war $TOMCAT_HOME/webapps/$PROJECT.war echo baking war mkdir -p $BAK_DIR cp $TOMCAT_HOME/webapps/$PROJECT.war $BAK_DIR/$PROJECT_date %Y%m%d%H%M%S.war echo deleteing temp file rm -rf $TEMP_DIR/$PROJECT.war echo finished else echo temp file not exits fi 转载于:https://www.cnblogs.com/caoheyang911016/p/6637930.html