1.先说下实现的效果,从svn拉取代码、调用gradle编译构建、将构建包分发到部署服务器并备份原来的部署包;

2.直接从http://mirrors.jenkins-ci.org/war/latest/jenkins.war下载最新的war包。

启动方法: java  -jar jenkins.war 即可,如果要以后台进程的方式启动,改成nohup java -jar jenkins.war & 即可;

加 --httpPort指定运行端口;

jdk、gradle这种依赖插件要先配置好;

这里设置一下JENKINS_HOME环境变量,这样,所下载的插件产生的数据都会到指定的目录里;不配的话默认是在home目录;

3.具体配置如图

a、这里,可以更新需要的插件,这里用的jenkins1.652,更新插件时,svn插件不要更新了;刚开始更新后,从svn拉代码一直出错;可能是插件的兼容性问题;

b、系统配置里

配置好jdk、gradle、shell

 

c、装下Publish over SSH插件

 

图1填写密码也可不填,图2填私钥所在路径,图3填私钥值,图4填默认远程目录

这里的私钥可以用   ssh-keygen -t rsa  生成,将生成的公钥值放到远程服务器的authorized_keys 文件里,即可免码登录;

 

d、新建条目,配置如下

图上配置项目名称、svn地址、svn登录名、密码,及本地目录;

 

 

图上1,任务脚本;

图2根路径,

图3构建脚本;

图4构建后的war包路径;

图5将war包路径拷贝到远程目录中所排除的路径部分,即我只需要拷贝一个war包,不需要它的父级目录;

图6拷贝到远程的目录,注意这个是相对目录,相对之前配置的ssh远程目录;

图7远程脚本文件,在拷贝完之后执行;这个脚本主要是将远程部署目录的工作包备份到历史文件夹,再把tmp中新的包覆盖工作包;

执行脚本:

#!/bin/bash
#_his='/usr/local/myapp/history/cbb_web'
#_deploy='/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/deploy'
#_jar='icustoms-cbb-pre-1.0.war'

_his='/usr/local/myapp/history/cbb_robot'
_deploy='/home/weblogic/apps/cbb-robot'
_jar='cbb-sender-sh-pre-robot-1.0.jar'

cp ${_deploy}/${_jar} ${_his}/$(date +%Y%m%d-%H%M%S)_${_jar} -fr
mv ${_his}/tmp/${_jar} ${_deploy}

 

e、多次编译分发

重复图上的这两步,就可以完成一次构建中多次编译、分发部署;图上的CIFS Publish插件是分发到windows目录;

 

f、创建节点服务器,可以将构建任务委托给节点服务器去做;

jenkins配置svn、gradle、ssh的更多相关文章

  1. jenkins配置SVN报错

    jenkins配置SVN报错,如图:

  2. Jenkins配置Publish Over SSH讲解说明

    原创 Jenkins配置Publish Over SSH讲解说明 2018-08-22 11:59:30 M.Blog 阅读数 3764更多 分类专栏: Jenkins   版权声明:本文为博主原创文 ...

  3. jenkins配置publish over ssh遇到的问题

    一.背景 目标 本篇文章主要是说明自己在配置jenkins的publish over ssh插件所遇到的问题.本次主要是windows下的jenkins通过ssh的方式访问我本地虚拟机的ubuntu系 ...

  4. jenkins中配置svn 出现absolute path is not allowed

    代码: 兵马未动,粮草先行 作者: 传说中的汽水枪 如有错误,请留言指正,欢迎一起探讨. 转载请注明出处. 想用jenkins作自动化部署tomcat. svn代码已经checkout到本地目录了(/ ...

  5. jenkins+svn+gradle自动化部署笔记

    自己虚拟机jekins配置:(jenkins+svn+gradle)自动化部署,1.linux配置好jdk,解压tomcat,将 jenkins.war翻到webapps目录下.2.系统管理-管理用户 ...

  6. 使用Gradle构建构建一个Java Web工程及持续集成环境Jenkins配置

    安装Eclipse插件——Buildship 什么是Buildship? Buildship能方便我们通过Eclipse IDE创建和导入Gradle工程,同时还能执行Gradle任务. Eclips ...

  7. Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)

    所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...

  8. jenkins配置SSH远程服务器连接

    之前用jenkins做了一个自动发布测试,配置任务的Post Steps时,选择的是执行shell命令.如下图: 这是在本192.168.26.233服务器上测试的,此服务器上运行jenkins,to ...

  9. jenkins配置git+maven+Publish over SSH

    一.配置git 1.新建项目,源码管理选择git 2.Repository URL输入git目录 3.Credentials中选择新增凭据,凭据类型选择SSH,usename输入git,passphr ...

随机推荐

  1. pip运行报错Fatal error in launcher: Unable to create process using pip.exe

    使用pip的时候报错Fatal error in launcher: Unable to create process using pip.exe 解决办法,升级pip python -m pip i ...

  2. 1、jQuery概述

    JQuery基本功能  ① 访问和操作Dom元素  ② 控制页面样式  ③ 对页面事件的处理  ④ 大量插件在页面中的运用  ⑤ 与Ajax技术的完美结合      $(document).ready ...

  3. appendChild append insertBefore prepend

      CreateTime--2017年11月2日16:57:59 Author:Marydon appendChild()与append() insertBefore()与prepend()区别与联系 ...

  4. Hibernate 使用log4j输出日志

      jar包不能少:F:\jars\slf4j-api-1.7.5.jar   F:\strutsWsold\slf4j-1.7.5\slf4j-1.7.5\slf4j-log4j12-1.7.5.j ...

  5. mongodb的基本语法(一)

    一.数据库常用命令 1.Help查看命令提示 help db.help(); db.yourColl.help(); db.youColl.find().help(); rs.help(); 2.切换 ...

  6. 中小型研发团队架构实践:任务调度Job

    一.Job 简介 Job 类似于数据库中的作业,多用于实现定时执行任务.适用场景主要包括定时轮询数据库同步.定时处理数据.定时邮件通知等. 我们的 Job 分为操作系统级别定时任务 WinJob 和 ...

  7. sql替换字符串部分内容

    update 表名 set 字段名=replace(cast(与前面一样的字段名 as varchar(8000)) ,'原本内容','想要替换成什么') update News set news_d ...

  8. wx小程序的学习

    传送门: # 微信小程序案例大全 https://www.cnblogs.com/icyhoo/p/6282574.html # 微信小程序开发工具 https://mp.weixin.qq.com/ ...

  9. unity, 不要试图用rigidbody.Sleep()停止rigidbody

    如果想让rigidbody pause,用rigidbody.Sleep()是完全错误的办法.因为有很多情况都可能使一个处在sleep的rigidbody唤醒,所以调用rigidbody.Sleep( ...

  10. worker

    <script id="worker" type="app/worker"> addEventListener('message', functio ...