Jenkins任务:创建“编译运行安卓项目”任务-pos_local

综述:本文将介绍如何在Jenkins上创建和运行“编译运行安卓项目”的任务:“新建Jenkins任务”、“选择构建一个Freesyle项目,输入任务名”、“配置任务”、“运行Jenkins任务”、“查看运行日志”。

1、新建Jenkins任务

2、选择构建一个Freesyle 项目,输入任务名

3、配置项目

(1)源码管理

选择Subversion,Repository URL填写$SVN_Url_POS_V2_0,Credentials添加登录svn的账号密码

Check-out Strategy选择Use 'svn update' as much as posible,with 'svn revert' before update

(2)构建触发器

勾选Build periodically,日程表填写H 7 * * *,表示每天上午7点运行

(3)构建环境

勾选Abort the build if it's stuck,Time-out strategy选择Absolute,Timeout minutes填写120

(4)构建

选择Execute Windows batch command

批处理命令填写

echo 现在的BUILD_ID=%BUILD_ID%

call D:\BXERP\trunk\src\jenkins\nbr_dev_refreshDB\nbr_dev_refreshDB.py

echo 执行完脚本后,现在的BUILD_ID=%BUILD_ID%

echo 正在覆盖configuration.java

call D:\BXERP\trunk\src\jenkins\pos_local\copy_configuration_java.bat

echo 正在覆盖完毕

exit 0

nbr_dev_refreshDB.py主要的逻辑是关闭tomcat,通知“小王子”刷新数据库,然后重启tomcat

代码如下:

nbr_dev_refreshDB.py

# coding=utf-8




import os

import sys

sys.path.append('D:/BXERP/trunk/src/jenkins/Common')       #引用的自定义模块不与该python文件在同一目录时,需要指定路径

from bxUtility import printInfo

from bxUtility import closeTomcat

from bxUtility import refreshDB

from bxUtility import startTomcat




FILE_NbrPath = 'D:/Tomcat/webapps/nbr'

CURRENT_SrcDirOfTableCreate = os.getenv("CURRENT_SrcDirOfTableCreate")

CURRENT_ReleaseNbrHomeUrl = os.getenv("CURRENT_ReleaseNbrHomeUrl")




try:

         # 关闭tomcat

         closeTomcat(60)  #参数为等待的时间(s),每10秒会检查一次,直到超过等待的时间




         # 通知小王子Jenkins版刷新DB

         refreshDB(120, CURRENT_SrcDirOfTableCreate)




         # 重启tomcat

         startTomcat(300, CURRENT_ReleaseNbrHomeUrl, CURRENT_SrcDirOfTableCreate)

except Exception as e:

         printInfo('出现异常:' + str(e), 1)

else:

         os._exit(0)

copy_configuration_java.bat主要是替换掉项目中的configuration.java文件,因为该文件指向服务器的IP地址需要做修改

bat文件命令:

rem 若SVN上的Configuration.java有更改,则需更新本文件,才复制到目标位置

del D:\Jenkins\workspace\pos_local\app\src\main\java\com\bx\erp\helper\*Configuration*.java

copy D:\BXERP\trunk\src\jenkins\pos_local\Configuration.java D:\Jenkins\workspace\pos_local\app\src\main\java\com\bx\erp\helper\Configuration.java

configuration.java文件

 

增加Invoke Gradle script

选择Use Gradle Wrapper

在Tasks填写

clean

build

jacocoTestReport

jacocoAndroidTestReport

(gradle clean 清除build文件夹,gradle build 检查依赖并编译打包,使用jacoco工具 运行测试并获得代码覆盖率)

再次增加Execute Windows batch command

批处理命令填写

echo 现在的BUILD_ID=%BUILD_ID%

call D:\BXERP\trunk\src\jenkins\nbr_dev_refreshDB\nbr_dev_refreshDB.py

echo 执行完脚本后,现在的BUILD_ID=%BUILD_ID%

exit 0

调用了nbr_dev_refreshDB.py,刷新数据库,并重启tomcat

(5)构建后操作

选择Editable Email Notification

Default Subject填写一个自己可以识别的名字,其它选项填写默认值

Attach Build Log选择Do Not Attach Build Log

选择高级设置

Triggers选择always,Send To Recipient

(6)保存,在主页面可以看到刚创建好的任务

4、运行Jenkins任务

点击Build Now按钮,开始运行任务

5、查看运行日志

在左下角可以看到运行中的任务,点击“控制台输出”查看日志

posted @ 2022-08-29 19:57  Boxin-kim  阅读(164)  评论(0)    收藏  举报
Web Analytics
Guang Zhou Boxin