Openshift に Jenkins インスタンスがあります
Openshift アプリケーションの Jenkins ビルドを有効にしました ここでは、Jenkins シェル スクリプトの一部と、それらが生成するログの一部を示します。
# 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
# 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から取得)
これをカスタマイズしgear build
たり、Openshift で Maven オプションをオーバーライドしたりすることについてのアイデアは大歓迎です :) マシン (jenkins、jenkins-build) で直接変更を加えることができます (無料の openshift アカウントが許す限り:))
編集
いくつかの回避策は実行することで
gear build
あり、mvn clean package
ビルドを 2 回実行すると、すべてのテスト目標が達成され、war がアップストリーム インスタンスに展開されます。さらに、Cobertura レポートは Jbehave テストで正常に動作しますが、これは洗練されておらず、リソースを消費するソリューションです。