我在 Openshift 上有 Jenkins 实例
我已启用 Jenkins 构建我的 Openshift 应用程序
这里是 Jenkins shell 脚本的一部分并记录它们生成的内容:
# Sync any libraries
rsync $upstream_ssh:~/.m2/ ~/.m2/
# Build/update libs and run user pre_build and build
gear build
上面的命令会触发这样的操作
+ gear build
Found pom.xml... attempting to build with 'mvn -e clean package -Popenshift -DskipTests'
Apache Maven 3.0.3 (r1075437; 2011-06-20 13:22:37-0400)
Maven home: /etc/alternatives/maven-3.0
我想自定义 Maven 选项(在本例中允许通过删除来运行测试-DskipTests
部分 )
在脚本中,我进一步尝试添加一些步骤并禁用此功能gear build
command
# Run tests here
mvn -e clean package -Popenshfit
高于运行mvn clean package
但不会更新最后一个成功的工件,并且日志显示
[WARNING] The requested profile "openshfit" could not be activated because it does not exist
.
我的个人资料中有这个pom.xml
所以我不知道发生了什么
<profiles>
<profile>
<id>openshift</id>
这不起作用:
mvn --global-settings $OPENSHIFT_MAVEN_MIRROR clean package -Popenshift
上面可能是一些老员工(摘自https://www.openshift.com/blogs/jenkins-polyglot-persistence-part-2 https://www.openshift.com/blogs/jenkins-polyglot-persistence-part-2)
关于定制这个的任何想法gear build
或者欢迎在 Openshift 上覆盖 Maven 选项:) 我可以直接在机器上进行更改(jenkins、jenkins-build)(到目前为止免费的 openshift 帐户允许我:))
Edit
一些解决方法是运行gear build
进而mvn clean package
所以我构建运行了两次,所有测试目标都得到满足,并且战争部署在上游实例上,此外 Cobertura 报告与我的 Jbehave 测试配合得很好,但这是一个不优雅、消耗资源的解决方案。