0

3 つのアプリケーションを含むプロジェクト構造があるとします。

├───app1
├───app2
├───app3

各アプリケーションの関連する出力を別の展開場所にコピーする msbuild タスクが必要です

deploy\app1\<app1.output>
deploy\app2\<app2.output>
deploy\app3\<app3.output>

以下のスクリプトは、代わりに次のことを行います。

deploy\app1\<app1.output> + <app2.output> + <app3.output>
deploy\app2\<app1.output> + <app2.output> + <app3.output>
deploy\app3\<app1.output> + <app2.output> + <app3.output>

バッチ処理に問題があることはわかっていますが、修正方法がわかりません。私が間違っているアイデアはありますか?

<Target Name="Deploy">
    <!-- Ensure the target home exists -->
    <MakeDir Directories="$(DeployPath)" />

    <!-- Select artefacts -->
    <ItemGroup>
        <ProjectPath Include="%(Project.BuildOutput)" />
        <ArtefactSource Include="%(ProjectPath.RootDir)%(ProjectPath.Directory)**\*.*" />
    </ItemGroup>

    <!-- copy files to respective artefact location -->
    <Copy SourceFiles="@(ArtefactSource)" DestinationFolder="$(DeployPath)\%(Project.Identity)"
         Condition="'%(Project.CanDeploy)' AND '%(Project.TestWasRun)' != 'Error'" />
</Target>
4

1 に答える 1