2014-07-23 18 views
6

Ho una soluzione Visual Studio 2013 con il codice sorgente Orchard completo. Quando uso "Pubblica ..." nel progetto "Orchard.Web" in Visual Studio, pubblica correttamente il sito nella destinazione File System che ho configurato nel file .PubXml che ho usato.MSBuild non copia i file con PublishProfile

Tuttavia, se si crea questo sito utilizzando Jenkins, i file non vengono copiati nella destinazione. Ho creato un file PubXml separato che viene utilizzato da Jenkins.

Nel mio lavoro Jenkins, ho due passaggi di Build di interesse. Il primo utilizza il file src\Orchard.sln con un argomento della riga di comando /p:Configuration=Release. Funziona correttamente e crea l'intera soluzione.

Il secondo passaggio di generazione, subito dopo, utilizza il file Costruisci della src\Orchard.Web\Orchard.Web.csproj e questi parametri:

  • /p: DeployOnBuild = true
  • /p: PublishProfile = "D: \ workspace \ sito \ tronco \ src \ Orchard.Web \ Proprietà \ PublishProfiles \ Jenkins.pubxml"
  • /p:VisualStudioVersion=12.0
  • /p: Configurazione = Rilasciare
  • /p: Piattaforma = AnyCPU
  • 012.
  • /v: minimal
  • /nologo
  • /p: WarningLevel = 1

Con questo, il creare e distribuire sembra al lavoro - ma non lo fa. Qui ci sono alcune linee dal output di generazione:

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 

No dove viene effettivamente copiare i file nella destinazione definita nel file PUBXML.

Al contrario, in Visual Studio, l'output è simile, ma trasforma solo 4 file di configurazione e include un sacco di "Editoria cartella x" linee:

(...) 
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.) 

(ho installato l'ultimo Windows Azure SDK per .NET sul server Jenkins.)

risposta

0

Ho lo stesso problema, che il lavoro per me:

/t:Rebuild 
/p:DeployOnBuild=true 
/p:PublishProfile=Jenkins_Publish 
/p:Configuration=Release 

non utilizzare/p: VisualStudioVersion = xxx

0

Questo è un po 'vecchio, ma in realtà ho appena impostato Orchard per poter essere realizzato tramite la riga di comando e MSBuild. Ecco quello che ho fatto:

/p:VisualStudioVersion=12.0;PublishProfile="example-profile";DeployProjA=true;FrameworkPathOverride="C:\Program Files (x86) \ Riferimento Assemblies \ Microsoft \ Framework \ v4. 5 "; Configuration = Release; PublishProfileRootFolder = c: \ Workspace \ src \ Orchard.Web \ Properties \ PublishProfiles; Password = ExamplePass

Poiché si utilizza Orchard, si desidera assicurarsi che venga pubblicato solo il progetto Orchard.Web quindi non usare DeployOnBuild = true. Questo tenterà di distribuire ogni progetto web nella soluzione, che è molto per Orchard.Invece seguire le linee guida qui per vedere come distribuire solo il progetto web: http://sedodream.com/2013/03/06/HowToPublishOneWebProjectFromASolution.aspx

Problemi correlati