msbuild extensionPackディレクトリのすべての内容を別のコンテンツにコピーする

StackOverflow https://stackoverflow.com/questions/4821872

  •  26-10-2019
  •  | 
  •  

質問

msbuild extensionPackを使用しています。ビルドディレクトリの内容全体をファイルシステム上の別のディレクトリにコピーしたいと思います。宛先ディレクトリの名前を変更したくはありません。内容を交換するだけです。それはMSBuild ExtensionPackに不慣れなかもしれませんが、これは簡単であるはずであり、Webですぐに利用可能なドキュメントを見つけることができなかったようです。

ビルドが成功した後、継続的な統合環境に自動的に展開されるサービスをセットアップしようとしています。

役に立ちましたか?

解決

私が覚えている限り、あなたは別の手順でクリアしてコピーする必要があります。それで、最初に削除/パージを行い、次にコピーします。 「上書き」する方法を見つけることができませんでした。これは実際に私たちにとってうまく機能しましたb/cの1つのビルドは、以前のビルドが含まれているファイルを削除する可能性があるため、「残る」ことを望まないでしょう。

削除するには、試してみてください(DeploymentDesintationPathがパスのあるプロパティであると仮定します):

<MSBuild.ExtensionPack.FileSystem.Folder
     TaskAction="RemoveContent" 
     path="$(DeploymentDestinationPath)" />

そして、コピーします(ソースと宛先の両方にアイテムグループを入力する必要があることに注意してください)

<ItemGroup>    
      <DeploymentSourceFiles
           Include="$(BuildFolder)\**\*"
      />  
      <DeploymentDestinationFiles
           Include="@(DeploymentSourceFiles->
           '$(DeploymentDestinationPath)\%(RecursiveDir)%(Filename)%(Extension)')"
      />  
</ItemGroup>

<Copy SourceFiles="@(DeploymentSourceFiles)"
     DestinationFiles="@(DeploymentDestinationFiles)" />

私はこれを数ヶ月で行っていないので、これらの例のいずれかが少し微調整する必要がある場合は許してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top