3

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 テストで正常に動作しますが、これは洗練されておらず、リソースを消費するソリューションです。

4

1 に答える 1

1

この質問は、OpenShift の Maven に関する別の質問 (「カスタマイズされた」サードパーティをインストールするという目標に向けて、ビルド プロセス中に OpenShift が Maven プロファイルをどのように使用するか) に関して「宿題をしている」ときに見つけました。 「jbossas」カートリッジを使用するアプリで、いくつかの「モジュール」カスタマイズとともに Liferay ポータルを提供する war ファイル。

私の portal-gproj アプリは、そのビルドで Jenkins を使用していませんが、最初に使用できる 3 つの「無料のギア」のうち、Jenkins で使用できる予備のギアがないことが予想されるためです。ただし、スケーラブルなアプリです。ただし、Bill DeCoste によるブログ エントリとして、Jenkins での OpenShift Maven ビルドのカスタマイズに関して、Jenkins に関する 2 つの構成機能について少なくとも言及している参照項目を見つけました: http://blog-judcon.rhcloud. com/?p=16要約すると、この記事では、Jenkins に関して次のように言及しています。1 つの「ジョブ構成のビルド/実行シェル セクション」。

私自身は Jenkins を使用したことはありませんが、実際に使用されているのを見たことはありますが、たとえばeXo Platformで使用されていると思います。Jenkins には、ジョブ構成用の一種の Web ベースのインターフェースがあると思いますか? (個人的には、Maven へのシェル/ファイルシステム インターフェイスを好む傾向があります)

あるいは、OpenShift Originベースラインを参照するように、OpenShift Origin Server source codeと対応するOpenShift Origin System Architecture Guideがあり、Amazon EC2 クラウドのレイヤーでOpenShift Onlineが実行されています。「他のすべてが失敗した場合は、ソース コードがあります」と、Red Hat の多くの場合と同様です (笑)。OpenShift Origin の下にとカートリッジの両方があるようです。確かに、これらのカートリッジのいずれかで使用されるプロセスの詳細は、そのソース コードから明らかです。jenkinsjenkins-client

お役に立てれば!コーヒー乾杯。

于 2013-12-12T17:28:57.717 に答える