問題タブ [jenkins]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2525 参照

performance - Why does a hudson "mvn clean install" build take 3-6x longer than the same on the command line?

We are seeing relatively long build times on our CI server (hudson) and they're starting to get in our way. I am aware hudson does more than invoke maven and I would happily grant it 10-20% more time for the job, but an order of magnitude slowdown seems too much.

Anyone have an idea of why this might be and how to solve the problem? I will start by saying what is not the cause:

  • the virtual machine hudson is running in: on the command line, it takes roughly the same amount of time as my development PC
  • other concurrent tasks: I made sure there was nothing diverting resources from the build task

The maven goals are literally clean and install, nothing fancy and resource-intensive like javadoc, checkstyle etc. Looking at the hudson build task console output, there seem to be delays when "Retrieving previous build number from [our Nexus artefact repository]", but I don't know of a simple way to measure performance of this step and publishing an artefact seems too simple an operation to justify the total difference in speed.

(problem also described in this thread)

Update:

We have upgraded Hudson/Jenkins to the latest release and have been able to use the timing plugin. Short version:

  • the good news: we now know nexus is causing the problem
  • the bad news: we still don't know why

More details

On one of our actual maven projects (maven build time: 3 min, hudson build time: 9 min) we could see that hudson also performs the build in 3 min, but then takes 6 minutes to upload the artefact to nexus.

Performing a manual upload of another artefact using nexus' web UI, I was able to confirm the following:

  • the actual artefact upload is done in a fraction of the time (i.e., in several seconds)
  • after these several seconds, the artefact appears as <nexusworkdir>/nexus/storage/test/test2/test2/1.0.0/test2-1.0.0.rpm

The real puzzler is why nexus takes over a minute to create this file: <nexusworkdir>/nexus/proxy/attributes/test/test2/test2/1.0.0/test2-1.0.0.rpm

As far as I can tell, it just calculates an MD5 and SHA1 signature and records general artefact information, but md5sum and sha1sum of a 75MB file take <1s to run...

Finally, it does not appear to be some sort of network time-out, because the delay seems to be roughly proportional to artefact size.

Any idea what nexus does after it receives an artefact is appreciated.

Update 2:

Setting the nexus log level to debug, nexus logs the following when an artefact is uploaded:

o.s.n.p.s.l.f.Defau~ - Copying stream with buffer size of: 4096

- RESPONSE /nexus/content/groups/public/org/python/jython/2.5.2/jython-2.5.2.jar 200

- REQUEST /nexus/content/groups/public/org/python/jython/2.5.2/jython-2.5.2.jar.sha1 on

- RESPONSE /nexus/content/groups/public/org/python/jython/2.5.2/jython-2.5.2.jar.sha1 200

- REQUEST /nexus/content/groups/public/.index/nexus-maven-repository-index.properties on org.mortbay.jetty.HttpConnection@141a720

o.s.n.p.m.m.M2Group~ - public retrieveItem() :: FOUND public:/.index/nexus-maven-repository-index.properties

- RESPONSE /nexus/content/groups/public/.index/nexus-maven-repository-index.properties 200

o.s.n.p.a.DefaultAt~ - Storing attributes on UID=test:/test/test/1.0.1/test-1.0.1.rpm

- servlet holder=nexus

- RESPONSE /nexus/ext-2.3/resources/images/default/window/icon-info.gif 200

- REQUEST /nexus/service/local/log/config on org.mortbay.jetty.HttpConnection@1dbd88f ....

It appears to just be sitting there for a minute or so and than continues with its work. Any idea why nexus does this is appreciated.

0 投票する
1 に答える
1179 参照

plugins - HP Quality Center ステータス プラグイン Hudson または Sonar

HP Quality Center に接続し、プロジェクトで開かれた DEFECTS に関するステータスを取得する Hudson または Sonar 用のプラグインについて誰か考えがありますか?

0 投票する
2 に答える
2604 参照

delphi - ハドソンのdunitテスト結果メッセージ

Delphi2010プロジェクトのCIサーバーとしてHudsonを使用しています。XMLTestRunner.pasユニットは、DUnitテスト結果をxmlファイルに書き込みます。このファイルは、hudsonxUnitプラグインがテスト結果を報告するために使用します。xUnitプラグインは失敗を表示しますが、メッセージは表示しません。

「テストツールの結果レポートの公開」のハドソンプロジェクト構成で、リストにdunitオプションがなく、xmlファイルがnunit形式に似ているため、テストツールとして「NUnit-バージョンN / A(デフォルト)」を選択します。

ハドソン構成には「カスタムツール」オプションもあり、「カスタムスタイルシート」を指定する必要がありますが、そのようなスタイルシートの書き方がわかりません(ドキュメントはありますか?)。

ブーストテストを使用したC++プロジェクトでは、すべてのメッセージで障害が適切に報告されます。

0 投票する
1 に答える
1508 参照

hudson - Jellyスクリプトで使用できるパス関数は?

Hudson/Jenkinsのゼリースクリプトでディレクトリファイル名をフルパスから分離するなどのことができるようにしたいと思います。

たとえば、 (ゼリースクリプトで)と/dir1/dir2/dir3/file.extにアクセスしたい場合。/dir1/dir2/dir3file.ext

getPath()やgetName()などのJava io関数をジェリースクリプトで使用できますか?

0 投票する
2 に答える
2327 参照

continuous-integration - Jenkinsscmユーザー<->メールマッピング。CLIを介してダンプ/復元/編集する方法

新しいHudson/Jenkinsインスタンスを設定するときに、scmユーザーのすべての電子メールアドレスを手動で提供する必要があるという問題が発生します。

Subversionを使用していますが、ユーザー名からメールアドレスを生成できません。マッピングを取得しましたが、GUIを使用せずにそれをコピー/編集する方法が見つかりませんでした。20人以上のユーザーが退屈で、ファイルなどを編集したいのですが。

たぶん私はscmusers.xmlのような些細なことを見逃しています(これは完全に仕事をします)?

0 投票する
3 に答える
1719 参照

java - コミットされた pom を変更せずに Hudson の特定のモジュールを無効にするにはどうすればよいですか?

巨大な Java プロジェクトに Hudson を使用しています。プロジェクトには 2 つのチームが関与しているため、ビルドの中断は非常に合理的であり、ユニット テストの失敗やビルドの中断のレポートは、できるだけ早くトリガーする必要があります。それを達成するために、非常に頻繁にトリガーされる毎日の継続的なビルドを使用し、変更されたモジュールのみとその依存関係に対して「クリーン テスト」の目標を実行しています。

これは問題ありませんが、十分ではありません。ビルドはまだ遅すぎます。ビルド プロセスの最後に統合テストを実行していて、「時間単位」の作業、特にチーム作業に関係のないモジュールを非アクティブ化したいと考えています。 UI部分で。

pom ファイルをハッキングせずに一部のモジュールを無効にするように Hudson を構成する方法はありますか?

0 投票する
18 に答える
192128 参照

python - nltk.data.loadでenglish.pickleの読み込みに失敗しました

トークナイザーを読み込もうとするとpunkt...

...aLookupErrorが提起されました:

0 投票する
3 に答える
2537 参照

jenkins - 余分なフォルダーをすべて含まない CVS チェックアウト

特定のフォルダーを CVS モジュールの奥深くから Hudson/Jenkins ワークスペースにチェックアウトしたいと考えています。他のオプション (プルーニング、ブランチなど) を取り除くと、CVS コマンドは ...

これにより、私のフォルダーには子フォルダー'a'が含まれ、それには'b'が含まれ、それには ... が含まれます。フォルダー'f'に到達するまで、それらはすべて空です。

私が本当に欲しいのは、myfolderにfの内容を含めることです。CVS はこの機能を (モジュールとして f を定義せずに) サポートしていますか?

そして、おまけのカルマについて... Jenkins にこのオプションを .cvsrc やその他のメカニズムで使用させることはできますか?

0 投票する
3 に答える
10983 参照

php - Hudson/Jenkinsを使用したPHPプロジェクトのデプロイ

現在、ターゲットマシンでSubversionチェックアウトを使用してPHPプロジェクトをデプロイしています。テストとコード分析の目的でHudson/Jenkinsを使用していますが、展開に使用できますか?もしそうなら、どのように?

0 投票する
1 に答える
160 参照

hudson - Hudson-CI パスは、ビルド要求がどこから来たのかを ShellCommands に伝えることができますか?

Perforce の送信によってトリガーされた場合 (高速なコンパイルとリンクを実行)、Hudson の http UI から要求された場合 (プロジェクト、すべてのアセットをビルドし、テスト用のアーカイブを作成) に別の方法でビルドを行うように Hudson に依頼したいと考えています。 .)

2 つのビルドが開始されたときにシステム環境の内容全体をエコーするように ShellCommand を設定しました (1 つはそれぞれの方法でトリガーされます)。それらの間に有用な違いはありません。この区別をするためにハドソンに活用できるものはありますか? 私は本当にハドソンで2倍の仕事をしたくありません.