私はasp.net MVCプロジェクトと、npmコマンドでビルドするフロントエンドを持っています。特定のフォルダをパッケージとして展開する方法
このフォルダは自分のcsprojファイルには含まれません。
私がteamcityから展開するとき、私は2つのステップを使います。
- 非常に非常に遅い/ appフォルダ(個別のファイル)
しかし、ftpの展開のためのアプリケーション
おそらく、私は動的にそれをcsprojファイル または何かに含めることができますか?
私はasp.net MVCプロジェクトと、npmコマンドでビルドするフロントエンドを持っています。特定のフォルダをパッケージとして展開する方法
このフォルダは自分のcsprojファイルには含まれません。
私がteamcityから展開するとき、私は2つのステップを使います。
しかし、ftpの展開のためのアプリケーション
おそらく、私は動的にそれをcsprojファイル または何かに含めることができますか?
しかし、ftpの展開は非常に遅いです。このフォルダを 'パッケージ'としてどのように配備できますか?
実際、多くのファイルを含むフォルダを展開すると、処理速度が低下します。単一のスレッドのみを開き、一度に1つのファイルのみをアップロードするためです。あなたが「MSBuildTasksを」nugetパッケージを追加する必要がありますが、他のフォルダにReleasePathを変更することができます。
<ItemGroup>
<Content Include="app\**\*.*" />
</ItemGroup>
<Import Project="..\.build\MSBuild.Community.Tasks.Targets" />
<Target Name="AfterBuild">
<PropertyGroup>
<ZipPackagePath>bin</ZipPackagePath>
</PropertyGroup>
<Zip Files="@(Link)" WorkingDirectory="$(ZipPackagePath)" ZipFileName="output\ZipName.zip" ZipLevel="9" />
</Target>
注:あなたは、MSBuildのターゲットによってフォルダのzipを考慮することができます。
しかし、FTPデプロイ後にそのzipファイルを解凍する必要があります。
またおそらく私は動的にそれをcsprojファイル、または何かに含めることができます else?
、あなたは動的プロジェクトファイルにそれを含めることができますし、それが私たちの推薦です。
これを行うには、プロジェクトをアンロードします。そして、プロジェクトの最後に、ちょうど終了タグの前に、スクリプト以下の場所:出版後
<Target Name="AddAppFiles" AfterTargets="Build">
<ItemGroup>
<Content Include="app\**\*.*" />
</ItemGroup>
</Target>
、アプリのフォルダが対象の場所に含まれています:
注意:
このターゲットでは、app
というフォルダは、ソリューションエクスプローラ(動的にインクルード)に表示されません。
<Target Name="AddAppFiles" BeforeTargets="_CheckForInvalidConfigurationAndPlatform">
iは、ターゲット '<ターゲット名= "AddAppFiles" BeforeTargets = "公開">
@ArtemPolischuk、あなたがasp.net MVCプロジェクトを使用しているので、ターゲットには 'Publish'が含まれていません。したがって、あなたが 'BeforeTargets =" Publish "を使用している場合、MSBuildはこのターゲットを呼び出すことができませんでした(clickonce publishにはターゲット、WPF、Windows Formなどが公開されています)。 'AfterTargets =" Build "または' BeforeTargets = "_ CheckForInvalidConfigurationAndPlatform" 'に変更することができます。 –
この作品は、私がビジュアルスタジオから展開しようとしています。しかし、私がチームシップから展開すると、うまくいきません。 私のTCの設定: ターゲット: '/ Pを再構築します。プラットフォーム= "任意のCPU" /P:DeployOnBuild = Trueの /p:Configuration=WebClient.Release /P:PublishProfile = "ウェブ" /P :ProfileTransformWebConfigEnabled = Trueの /P:_DestinationType = AzureWebSite /P:MSDeployPublishMethod = WMSVC /P:ユーザ名= ZZ /P:パスワード= ZZ /P:SkipExtraFilesOnServer = true'の –
この問題のための任意のアップデートを:
app
フォルダが完全に構築した後に生成される場合は、同様に、
AfterTargets="Build"
BeforeTargets="_CheckForInvalidConfigurationAndPlatform"
に変更できますか?あなたの問題を解決しましたか?そうでない場合は、この問題に関する最新情報をお知らせください。 –