2012-05-10 45 views
5

Tôi đã thêm quy tắc bỏ qua sau vào dự án của mình nhưng khi tôi sử dụng Triển khai Web để xuất bản nội dung, các tệp trong thư mục/config đang bị xóa.MS Web Deploy Bỏ qua Quy tắc không bỏ qua

Tôi đang sử dụng quy trình tìm thấy here và tôi thề rằng nó đã hoạt động trước đó.

Tôi đã thêm dòng sau vào file dự án của tôi:

<PropertyGroup> 
    <OnBeforePackageUsingManifest>AddCustomSkipRules</OnBeforePackageUsingManifest> 
</PropertyGroup> 
<Target Name="AddCustomSkipRules"> 
    <ItemGroup> 
     <MsDeploySkipRules Include="SkipConfigFolder"> 
     <SkipAction>Delete</SkipAction> 
     <ObjectName>dirPath</ObjectName> 
     <AbsolutePath>.*\\config\\$</AbsolutePath> 
     <XPath></XPath> 
     </MsDeploySkipRules> 
     <MsDeploySkipRules Include="SkipConfigSubFolders"> 
     <SkipAction>Delete</SkipAction> 
     <ObjectName>dirPath</ObjectName> 
     <AbsolutePath>.*\\config\\.*$</AbsolutePath> 
     <XPath></XPath> 
     </MsDeploySkipRules> 
    </ItemGroup> 
</Target> 

Khi tôi xuất bản (thông qua dòng lệnh sử dụng file cmd tạo ra bởi các gói), sau đây là outputted:

------------------------------------------------------- 
Start executing msdeploy.exe 
------------------------------------------------------- 
"C:\Program Files\IIS\Microsoft Web Deploy V2\\msdeploy.exe" 
    -source:package='<MyPackageFile>' 
    -dest:auto,includeAcls='False' 
    -verb:sync 
    -disableLink:AppPoolExtension 
    -disableLink:ContentExtension 
    -disableLink:CertificateExtension 
    -skip:skipaction='Delete',objectname='dirPath',absolutepath='.*\\config\\$' 
    -skip:skipaction='Delete',objectname='dirPath',absolutepath='.*\\config\\.*$' 
    -setParamFile:"<MySetParameters.xml>" 
Info: Deleting filePath (Default Web Site/uPPK_32\config\New Text Document.txt). 

Dường như quy tắc bỏ qua đang được thêm nhưng thông báo New Document Document.txt đang bị xóa. Làm thế nào tôi có thể ngăn chặn điều này? Tui bỏ lỡ điều gì vậy?

+0

Xin chào.Bạn có khắc phục được không? Im có cùng một vấn đề! – fcaldera

+0

Tôi chưa tìm được giải pháp. Tôi đã chuyển sang bây giờ nhưng tôi rất thích hiểu tại sao điều này không hiệu quả. Tôi sẽ đăng một sửa chữa ở đây nếu tôi tìm thấy một ... :) –

+0

Sự hiểu biết của tôi là những SkipRules này không chạy khi sử dụng Package/Web Deploy, xem: https://stackoverflow.com/a/5659390/1339347 – uniquelau

Trả lời

3

Tôi nghĩ dòng bỏ qua thứ hai của bạn cần sử dụng tệpPath thay vì DirPath, vì bạn đang chọn tệp ở đó.

3

Các giá trị của thuộc tính này là absolutePath regexes, vì vậy bạn có thể muốn có một giá trị như '\\config' hay '\\config$' thay vì các giá trị cho hai ví dụ Bỏ qua Settings thể hiện trong câu hỏi của bạn.

+0

Tôi đã có cùng một vấn đề và đây là những gì cố định nó cho tôi. Cảm ơn! – Alexandre