[关闭]
@kevinZheng 2016-05-06T01:10:02.000000Z 字数 2884 阅读 2571

记录工作中的持续集成环境配置

持续集成 开发环境 jenkins weblogic


java web项目 团队开发过程中使用持续集成来运行重复的工作解放劳动力

环境包含

  1. svn 服务器
  2. weblogic 测试服务器
  3. maven 私服
  4. jenkins 持续继承构建服务

weblogic 测试服务器

建域 启动什么的都不说了,重点记一下远程发布
1. 生存wlfullclient.jar
2. 了解一下weblogic.Deployer命令

wlfullclient.jar生成方式是,进入weblogic的安装目录例如/u01/Oracle/Middleware/wlserver_10.3/server/lib,
运行java -jar wljarbuilder.jar
就能生成wlfullclient.jar文件 ,然后拷贝到jenkins 部署的机器上后面会用到

查看weblogic.Deployer例子

java -Xms256M -Xmx256M -cp wlfullclient.jar weblogic.Deployer -examples

weblogic.Deployer卸载某个web应用

java -Xms256M -Xmx256M -cp wlfullclient.jar weblogic.Deployer -name demo01 -targets AdminServer -adminurl t3://10.100.202.163:7001 -username weblogic -password weblogic# -undeploy

weblogic.Deployer部署web应用

java -Xms256M -Xmx256M -cp wlfullclient.jar weblogic.Deployer -debug -stage -remote -verbose -upload -name demo01 -targets AdminServer -adminurl t3://10.100.202.163:7001 -username weblogic -password weblogic# -deploy demo01.war

带上版本号 可以不停应用的同时部署

-appversion
经过试用,发现-deploy最多支持两个版本的存在继续发布就报错了,没找到设置的地方而且不能自动删除之前的版本 感觉不太实用,还是用 -redeploy 命令

maven私服

网上下载最新的nexus 解压运行
跟据项目pom.xml 中设置对应的repositiories 即可
配置setting.xml

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd">
    <mirrors>
        <mirror>
            <id>icrm-repository</id>
            <name>icrm</name>
            <url>http://maven.icrm.pactera.com:8081/nexus/content/groups/icrm</url>
            <mirrorOf>*</mirrorOf>
        </mirror>
    </mirrors>
    <servers>
        <server>
            <id>icrm-repository</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        <server>
            <id>icrm-pluginRepository</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        <server>
            <id>icrm-snapshots</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        <server>
            <id>icrm-releases</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
    </servers>
</settings>

主要是配置私服代理,和发布用的server信息,配好能同步更新依赖jar包就ok 了

jenkins 持续继承构建服务

下载最新的war包 扔到tomcat webapp 里直接运行就好了,或者直接用命令启动也行$ java -jar jenkins.war
启动后访问 ip:8080/jenkins
目前是配一个打包的一个发布的共两个项目,具体情况根据需要来做

maven打包任务

  1. 新建-》选择“构建一个maven项目” 名字随便写比如就叫ci01
  2. 设置 源码管理 选择 Subversion 填入 svn 地址
  3. 构建触发器 Build periodically 日程表 填:0 13,17 * * * 每天中午一点下午五点 自动构建
  4. Build 中goals and options 填入 clean -U package -P uat (-p用来指定不同的环境配置)
  5. 保存就好了

weblogic 发布任务

以上配置用来配置打包,配好后再配置一个自动发布的任务
1. 新建 选择 构建一个自由风格的
2. 源码管理选择 None
3. 构建触发器选择 "Build after other projects are built" 然后填入ci01
4. 构建里面 点击“增加构建步骤” 选择 Execute shell
5. command 里面填入自动发布的命令
6. 保存
自动发布命令:

java -Xms256M -Xmx256M -cp ~/ci/wlfullclient.jar weblogic.Deployer -verbose -upload -name demo01  -targets AdminServer -adminurl t3://10.101.2.124:7001 -username weblogic -password weblogic# -redeploy   -source ~/.jenkins/workspace/ci01/target/demo01.war

命令说明:
1. -Xms256M -Xmx256M 用来防止内存溢出,
2. wlfullclient.jar 里提供了weblogic.Deployer 命令用来远程发布项目war包,所以 需要-cp指定jar包路径 来启动命令 ,
3. -verbose 指定后面的参数,
3. -upload 远程发布需要上传文件,
4. -name 发布项目名称
5. -targets 目标服务,
6. -adminurl 指定连接 weblogic 的协议 ip 和端口
7. -redploy 重新发布的 意思
8. -source 本地需要上传war包路径
更详细的参数可以参考oracle网站的文档

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注