Usando o msbuild para executar um perfil de publicação do sistema de arquivos
Eu tenho um projeto c # .Net 4.0 criado com VS2010 e agora sendo acessado com VS2012.
Estou tentando publicar apenas os arquivos necessários deste site para um local de destino(C: \ builds \ MyProject [arquivos])
Minha estrutura de arquivos: ./ProjectRoot/MyProject.csproj ./ProjectRoot/Properties/PublishProfiles/FileSystemDebug.pubxml
Estou executando o seguinte via MSBuild:
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ MSBuild.exe ./ProjectRoot/MyProject.csproj / p: DeployOnBuild = verdadeiro /p:PublishProfile=./ProjectRoot/Properties/PublishProfiles/FileSystemDebug.pubxml
Aqui está o xml em FileSystemDebug.pubxml
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>C:\builds\MyProject\</publishUrl>
<DeleteExistingFiles>True</DeleteExistingFiles>
</PropertyGroup>
</Project>
O comportamento resultante é:
um arquivo zip é criado aqui:./ProjectRoot/obj/Debug/Package/MyProject.zipNada é implantado para<publishUrl>C:\builds\MyProject\</publishUrl>
WTFo arquivo zip que é criado é um café da manhã de porcos e cheio de arquivos que não são necessários para o aplicativo.Quando executo este perfil de publicação no visual studio, uma pasta é criada em *C: \ builds \ MyProject * e contém os artefatos exatos que eu quero.
Como faço para obter esse resultado simples de msbuild?