Tôi có giải pháp Visual Studio 2013 với mã nguồn đầy đủ của Orchard. Khi tôi sử dụng "Xuất bản ..." trên dự án "Orchard.Web" trong Visual Studio, nó sẽ xuất bản chính xác trang web đến đích Hệ thống tệp mà tôi đã định cấu hình vào tệp .PubXml
mà tôi đã sử dụng.MSBuild không sao chép tệp bằng PublishProfile
Tuy nhiên, nếu tôi xây dựng trang web này bằng cách sử dụng Jenkins, các tệp sẽ không được sao chép vào đích. Tôi đã tạo một tệp PubXml riêng biệt được sử dụng bởi Jenkins.
Trong công việc Jenkins của tôi, tôi có hai bước xây dựng quan tâm. Đầu tiên sử dụng tệp src\Orchard.sln
với đối số dòng lệnh là /p:Configuration=Release
. Điều này chạy đúng và xây dựng toàn bộ giải pháp.
Bước xây dựng thứ hai, ngay sau đó, sử dụng File xây dựng của src\Orchard.Web\Orchard.Web.csproj
và các đối số dòng lệnh:
- /p: DeployOnBuild = true
- /p: PublishProfile = "D: \ workspace \ site \ trunk \ src \ Orchard.Web \ Thuộc tính \ PublishProfiles \ Jenkins.pubxml"
- /p:VisualStudioVersion=12.0
- /p: Cấu hình = Thả
- /p: nền tảng = AnyCPU 012.
- /v: tối thiểu
- /nologo
- /p: WarningLevel = 1
Với điều này, việc xây dựng và triển khai dường như làm việc - nhưng không. Dưới đây là một số dòng từ đầu ra xây dựng:
Copying all files to temporary location below for package/publish:
obj\Release\Package\PackageTmp.
Auto ConnectionString Transformed obj\Release\Package\PackageTmp\Shapes\Scripts\Web.config into obj\Release\CSAutoParameterize\transformed\Shapes\Scripts\Web.config.
(... about 200 more "Auto ConnectionString..." lines...)
Finished: SUCCESS
Không thực sự sao chép tệp đến đích được xác định trong tệp PUBXML.
Ngược lại, trong Visual Studio, đầu ra trông tương tự, nhưng biến đổi chỉ có 4 tập tin cấu hình và bao gồm rất nhiều "xuất bản thư mục x" dòng:
(...)
Transformed Modules\SH.GoogleAnalytics\web.config using ....
Copying all files to temporary location below for package/publish:
obj\Release\Package\PackageTmp.
Publishing folder /...
Publishing folder bin...
(etc.)
(Tôi đã cài đặt mới nhất của Windows Azure SDK cho .NET trên máy chủ Jenkins.)