2016-12-01 4 views
3

私のazureウェブサイトプロジェクトにsrcファイルとdist/folderがあります。distフォルダをazure Webサイトにのみデプロイするには?

project 
|- src/ 
|- dist/ 

デフォルトの動作では、プロジェクト内のすべてのファイル、つまりsrcとdistの両方がアップロードされます。

website 
|- src/ 
|- dist/ 

ウェブサイトをきれいに保つために、その中にdistファイルだけを置いておきたいと思います。

website 
|- dist/ 

私がdistフォルダをウェブサイトにマップすることができればさらに良いでしょう。

website 
|- all the files 
|- in dist folder 

どうすればよいですか?

特定のフォルダを右クリックして「公開」するだけで公開することができます。しかし、このウェブサイトは、bin /フォルダ内のいくつかのdllを展開する必要があります。

distフォルダのみを保持する別のazureウェブサイトプロジェクトを作成しようとしましたが、展開にsrcプロジェクトのdllを含める方法がわかりません。

+0

この問題は解決しましたか? –

答えて

1

要件に応じて、WebサイトをAzureにデプロイする前に、公開プロファイルを変更してMSBuildタスクを追加できると想定しました。ここで私のテストです、あなたはそれを参照することができます。

プロジェクト構造

あなたは、RemoveDirでターゲットを定義するタスクを移動して、次のように自分の公開プロフィールにPropertyGroup後にそれを置くことができ、あなたの公開プロフィール

を変更します。

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 

    <Target Name="MoveDistToRoot" AfterTargets="CopyAllFilesToSingleFolderForMsdeploy"> 
    <!--1.Deleting Folders except dist--> 
    <ItemGroup> 
     <_FolderToDelete Include="$(_PackageTempDir)\src" /> 
     <!--you could add more folder paths as follows:--> 
     <!--<_FolderToDelete Include="$(_PackageTempDir)\folderName" />--> 
    </ItemGroup> 
    <RemoveDir Directories="@(_FolderToDelete)" /> 

    <!--2.Copying files,folders from dist to root directory--> 
    <ItemGroup> 
     <_FileToMove Include="$(_PackageTempDir)\dist\**" /> 
    </ItemGroup> 
    <Move SourceFiles="%(_FileToMove.Identity)" DestinationFolder="$(_PackageTempDir)\%(RecursiveDir)" /> 

    <!--3.Deleting the empty folder dist--> 
    <RemoveDir Directories="$(_PackageTempDir)\dist" /> 
    </Target> 

</Project> 

変更に伴い、変更された公開プロファイルを使用してWebサイトをAzure Web Appに展開し、KUDU経由でAzure上のWebアプリケーションの構造をチェックしてみることができます。

関連する問題