3

チームシティには、展開用に次のコマンドラインパラメーターがあります。すべて正常に動作しますが、展開中に一部のディレクトリをスキップしたいです。チームシティの次のmsbuildスクリプトにそのロジックを追加するにはどうすればよいですか

/P:Configuration=%env.Configuration%
/P:DeployOnBuild=True
/P:DeployTarget=MSDeployPublish
/P:MsDeployServiceUrl=https://%env.TargetServer%/MsDeploy.axd
/P:AllowUntrustedCertificate=True
/P:MSDeployPublishMethod=WMSvc
/P:CreatePackageOnPublish=True
/P:SkipExtraFilesOnServer=True
/P:UserName=xxxxx
/P:Password=xxxxx
4

3 に答える 3

7

私は同じことに取り組んでいました。.csproj ファイルを変更する必要がなかったので、これを試しました。これまでのところ私のために働いています。私の場合、Data フォルダーではなく、メディア、App_Data\Logs、および App_Data\preview フォルダーを展開から除外していました。

基本的に、ExcludeFoldersFromDeployment をパラメーターとして MSBuild に渡すことができます。それを SkipExtraFilesOnServer と組み合わせるとうまくいきます。

/p:Configuration=Debug
/p:DeployOnBuild=True
/p:DeployTarget=MSDeployPublish
/p:MsDeployServiceUrl=OurDevWebServer/msdeployagentservice
/p:AllowUntrustedCertificate=True
/p:MSDeployPublishMethod=RemoteAgent
/p:CreatePackageOnPublish=True
/p:DeployIisAppPath=umbraco_TestSite
/p:IgnoreDeployManagedRuntimeVersion=True
/p:SkipExtraFilesOnServer=True
/p:ExcludeFoldersFromDeployment="media;App_Data\Logs;App_Data\preview"
/p:IncludeSetAclProviderOnDestination=False
/p:AuthType=NTML /p:UserName=
于 2014-04-07T19:25:37.367 に答える
1

実際、私はすでにこれを次のようにプロジェクトに実装しています。

<ItemGroup>
        <MsDeploySkipRules Include="SkipDeleteApp_Data_Import">
            <SkipAction></SkipAction>
            <ObjectName>dirPath</ObjectName>
            <AbsolutePath>$(_Escaped_WPPAllFilesInSingleFolder)\\App_Data\\Import</AbsolutePath>
        </MsDeploySkipRules>
    </ItemGroup>
    <ItemGroup>
        <MsDeploySkipRules Include="SkipDeleteApp_Data_File">
            <SkipAction></SkipAction>
            <ObjectName>filePath</ObjectName>
            <AbsolutePath>$(_Escaped_WPPAllFilesInSingleFolder)\\App_Data\\en-US-custom.txt</AbsolutePath>
        </MsDeploySkipRules>
    </ItemGroup>
于 2013-04-17T06:09:50.993 に答える
1

プロパティではなく項目として宣言されているため、コマンド ラインから WPP スキップ ルールを指定することはできません。

pubxml(またはwpp.targets)内でスキップ ルールを宣言するための構文は次のとおりです。

<ItemGroup>
  <MsDeploySkipRules Include="SkipErrorLogFolder1"> 
    <SkipAction>Delete</SkipAction> 
    <ObjectName>filePath</ObjectName> 
    <AbsolutePath>ErrorLog</AbsolutePath> 
  </MsDeploySkipRules> 
</ItemGroup>
于 2012-10-21T00:37:50.993 に答える