2016-03-24 17 views
0

TeamCityを使用してOctopusをCD用に使用しています。 OctoPackは、展開中に使用するためにNuget Packagesを作成することができました。また、ライブラリを構築し、統合されたNuget Serverを使用する実験も行っています。TeamCityで利用できないNugetパッケージ

我々は両方をうまく実行することができました。両方の環境に展開し、Nuget.Configを使用してライブラリパッケージをインストールし、TCで復元してビルドします。

昨日、CDが動作しなくなり、パッケージがビルドされていますが、Nuget Serverはパッケージにアクセスできなくなっています。 Googleの指示に従ってmetadataBuildをリセットしましたが、まだフィードに新しいパッケージが追加されていません。パッケージはまだビルド中であることを確認しました。

アイデア?

答えて

1

解決策を得るための出発点は、ソリューションがTCで構築されているときに、ナゲットパッケージが格納されている場所によって異なります。

TC Nugetフィードに残っている場合は、Nugetストア(TC Artifacts)に100を超えるパッケージがあるかどうかを確認する必要があります。我々は、100個以上のパッケージを一度入手すると、Octopusがそれを引き出そうとしたときに100個後のパッケージは表示されないことがわかりました。

ネイティブOctopus Nugetストアにプッシュしている場合は、おそらくサーバーのスペースがいっぱいになっていないことを確認して、それ以上プッシュすることはできません。

TCのビルドログには、これらのパッケージがどこでどのように処理されているかがたくさんあります。また、ビルド後にビルド成果物として表示され、ビルド成果物が少なくとも構築されていることをさらに確認する必要があります。

0

関連はないかもしれませんが、TCのNugetフィードは、ビルドが完了してから新しいパッケージを受け取るまでに時間がかかる場合があります。特に一度多くのパッケージを入手するとそれは後で(連鎖的なビルドによって)キックオフされた場合、Octopusが失敗する可能性があります。

私が見つけたのは、デプロイパッケージをOctopusの内部ナゲットストアに直接プッシュし、TCや他のナゲットサーバーに共有(他のプロジェクトで参照)しておくことです。 (NBでは、パッケージを取り出すためにナゲットサーバーとしてOctopusを使用することはできません)。プッシュは、パッケージを生成するビルドの明示的なステップとして実行されます。

関連する問題