9

CruiseControlのセットアップ中に、ビルドパブリッシャーブロックをパブリッシャータスクに追加しました。

<buildpublisher>
  <sourceDir>C:\MyBuild\</sourceDir>
  <publishDir>C:\MyBuildPublished\</publishDir>
  <alwaysPublish>false</alwaysPublish>
</buildpublisher> 

これは機能しますが、ビルドのファイルコンテンツ全体をコピーします。DLLと.aspxページのみをコピーしたいので、公開するためにソースコードは必要ありません。

これをフィルタリングする方法を知っている人はいますか、それとも代わりにRoboCopyスクリプトを実行するタスクを設定する必要がありますか?

4

4 に答える 4

3

これを行うためのタスクを設定しました。CruiseControlをそれほど具体的にする方法を私は知りません。私は通常、バッチファイルをチェーンしてCC.netタスクにコピーします。

于 2008-08-22T18:05:24.583 に答える
1

Web プロジェクトについてはわかりませんが、winforms アプリの場合、次のように MSBuild タスクから TargetOutputs を取得できます。

<MSBuild Projects="@(VSProjects)"
  Properties="Configuration=$(Configuration)">
  <Output TaskParameter="TargetOutputs" ItemName="BuildTargetOutputs"/>
</MSBuild>

そしてコピーを行います:

<Copy SourceFiles="@(BuildTargetOutputs)" 
  DestinationFolder="bin"
  SkipUnchangedFiles="true" />

Web プロジェクトの TargetOutputs が何であるかはわかりませんが、winforms とクラス ライブラリの場合は .dll または .exe です。

于 2008-08-28T16:10:16.617 に答える
0

これには、CC.Net Powershell タスクも使用できます。

于 2011-08-11T15:49:41.330 に答える
0

CC.NET のデフォルトのビルド パブリッシャーには、これを行う方法がありません。いくつかのオプションがあります:

  • 必要な機能を備えた独自のビルド パブリッシャーを作成する
  • カスタム NAnt/MSBuild タスクを作成する
  • スクリプト テクノロジ (RoboCopy、バッチ ファイルなど) を使用してスクリプト ファイルを作成し、CC.NET の「実行可能」タスク、または NAnt/MSBuild の「実行」タスクを実行します。
于 2008-08-28T16:05:16.037 に答える